diff --git a/interview/network/base.md b/interview/network/base.md index 1c0f8fca..b9a8ca51 100644 --- a/interview/network/base.md +++ b/interview/network/base.md @@ -163,6 +163,50 @@ IP | 描述 # 3 各种网络协议 +基于TCP/UDP的协议 + +类型|协议 | 端口 | 功能 +--- | ---| ---| --- +TCP | FTP| 20(数据) 21(会话) | 定义了文件传输协议, 下载文件,上传主页,都要用到FTP服务。 +TCP | Telnet | 23 | 远程登录(不安全) +TCP | SSH | 22 | 安全登录、文件传送(SCP)和端口重定向 +TCP | SMTP | 25 | 定义了简单邮件传送协议 +TCP | POP3 | 110 | Post Office Protocol 3的简称,即邮局协议的第3个版本 +TCP | IMAP3 | 220 | +TCP | HTTP | 80 | 超文本传输协议,WEB服务用 +UDP | DNS | 53 | 域名解析服务 +UDP | RIP | - | 工作再网络层,路由选择信息协议(RIP)是一种在网关与主机之间交换路由选择信息的标准 +UDP | SNMP | 161 | 简单网络管理协议,是用来管理网络设备的。由于网络设备很多,无连接的服务就体现出其优势。 +UDP | NFS | | 网络文件系统 +UDP | TFTP | 69 | 通用文件传输协议 + +# ARP/RARP协议 + +地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。 + +ARP工作流程举例: + +主机A的IP地址为192.168.1.1,MAC地址为0A-11-22-33-44-01; +主机B的IP地址为192.168.1.2,MAC地址为0A-11-22-33-44-02; +当主机A要与主机B通信时,地址解析协议可以将主机B的IP地址(192.168.1.2)解析成主机B的MAC地址,以下为工作流程: +(1)根据主机A上的路由表内容,IP确定用于访问主机B的转发IP地址是192.168.1.2。然后A主机在自己的本地ARP缓存中检查主机B的匹配MAC地址。 +(2)如果主机A在ARP缓存中没有找到映射,它将询问192.168.1.2的硬件地址,从而将ARP请求帧广播到本地网络上的所有主机。源主机A的IP地址和MAC地址都包括在ARP请求中。本地网络上的每台主机都接收到ARP请求并且检查是否与自己的IP地址匹配。如果主机发现请求的IP地址与自己的IP地址不匹配,它将丢弃ARP请求。 +(3)主机B确定ARP请求中的IP地址与自己的IP地址匹配,则将主机A的IP地址和MAC地址映射添加到本地ARP缓存中。 +(4)主机B将包含其MAC地址的ARP回复消息直接发送回主机A。 +(5)当主机A收到从主机B发来的ARP回复消息时,会用主机B的IP和MAC地址映射更新ARP缓存。本机缓存是有生存期的,生存期结束后,将再次重复上面的过程。主机B的MAC地址一旦确定,主机A就能向主机B发送IP通信了。 + +逆地址解析协议,即RARP,功能和ARP协议相对,其将局域网中某个主机的物理地址转换为IP地址 + +RARP协议工作流程: + +  (1)给主机发送一个本地的RARP广播,在此广播包中,声明自己的MAC地址并且请求任何收到此请求的RARP服务器分配一个IP地址; + +  (2)本地网段上的RARP服务器收到此请求后,检查其RARP列表,查找该MAC地址对应的IP地址; + +  (3)如果存在,RARP服务器就给源主机发送一个响应数据包并将此IP地址提供给对方主机使用; +  (4)如果不存在,RARP服务器对此不做任何的响应; +  (5)源主机收到从RARP服务器的响应信息,就利用得到的IP地址进行通讯;如果一直没有收到RARP服务器的响应信息,表示初始化失败。 + ## 路由选择协议 - RIP协议:底层是贝尔曼福特算法,它选择路由的度量标准(metric)是跳数,最大跳数是15跳,如果大于15跳,它就会丢弃数据包。 diff --git a/interview/note.md b/interview/note.md index 1d4a4599..c85e5df5 100644 --- a/interview/note.md +++ b/interview/note.md @@ -68,6 +68,6 @@ Java后端开发(大数据、分布式应用等) 项目 | 计划时间 | 完成时间 | 备注 --- | --- | --- | --- 算法和数据结构 | 7.20 | 7.20 -计算机网络 | 7.25 | -操作系统 | 7.25 -数据库原理 | 7.25 \ No newline at end of file +计算机网络 | 7.25 | 7.25 +操作系统 | 7.25 | +数据库原理 | 7.25 | \ No newline at end of file