计算机网络技术入门知识,基础知识最重要 计算机网络知识学习( 四 )


(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地址 。比如局域网中的一台主机只知道物理地址,不知道IP地址,可以通过RARP发出对自己IP地址的广播请求,然后由RARP服务器负责应答 。
RARP协议的工作流程:
(1)向主机发送本地RARP广播,在该广播中,您声明您的MAC地址,并要求任何接收到该请求的RARP服务器分配IP地址;
(2)本地网段上的RARP服务器收到该请求后,检查其RARP列表,查找MAC地址对应的IP地址;
(3)如果存在,RARP服务器向源主机发送响应包,并将IP地址提供给对方主机使用;
(4)如果不存在,RARP服务器不响应;
(5)当源主机接收到来自RARP服务器的响应信息时,使用获得的IP地址进行通信;如果没有收到来自RARP服务器的响应信息,初始化失败 。
回到顶端
6.路由协议
常见的路由协议包括RIP协议和OSPF协议 。
RIP协议:底层是贝尔曼福德算法 。其路由选择的度量是跳数,最大跳数是15跳 。如果它大于15跳,它将丢弃数据包 。
OSPF协议:开放最短路径优先开放最短路径优先 。底层是Dijkstra算法,这是一种链路状态路由协议 。它的路由度量是带宽和延迟 。
回到顶端
Tcp/IP协议
TCP/IP协议是互联网最基本的协议,是互联网的基础 。它由网络层的IP协议和传输层的TCP协议组成 。一般来说,TCP负责发现传输问题,一有问题就发出信号,要求重传,直到所有数据都安全正确地传输到目的地 。而IP为互联网上的每个联网设备指定一个地址 。
IP层接收下层(网络接口层如以太网设备驱动)发来的数据包,并将数据包发送到更高层——TCP或UDP层;相反,IP层也将从TCP或UDP层接收的数据包传输到较低层 。IP数据包是不可靠的,因为IP没有做任何事情来确认数据包是按顺序发送的还是损坏的 。IP数据包包含发送它的主机的地址(源地址)和接收它的主机的地址(目的地址) 。
TCP是面向连接的通信协议 。连接是通过三次握手建立的,通信完成后应该拆除连接 。因为TCP是面向连接的,所以只能用于端到端的通信 。TCP提供可靠的数据流服务,采用“肯定应答加重传”技术实现传输的可靠性 。TCP还使用一种称为“滑动窗口”的方法来控制流量 。所谓的窗口,实际上是表示接收能力来限制发送方的发送速度 。
注:seq:“sequance”序号;Ack:“确认”确认号;SYN:“synchronize”请求同步标志;;ACK:“确认“确认标志”;芬:“终于”结束标志 。
TCP连接建立过程:首先客户端发送连接请求消息,服务器接受连接后回复ACK消息,并为这个连接分配资源 。客户端收到ACK消息后,也向服务器段发送ACK消息,并分配资源,从而建立TCP连接 。
TCP断开流程:假设客户端发起断开请求,即发送FIN消息 。服务器收到FIN消息后,表示“我在客户端没有任何数据发送给你” 。但是,如果你还有数据要发送,你也不必急着关闭套接字,你可以继续发送数据 。于是你先发送ACK,“告诉客户端我已经收到你的请求,但是我还没有准备好,请继续等我的消息” 。此时,客户端进入FIN_WAIT状态,继续等待来自服务器端的FIN消息 。当服务器确定数据已经发送完毕,就向客户端发送FIN消息,“告诉客户端,OK,我的数据已经发送完毕,我准备关闭连接了” 。客户端收到FIN消息后,知道可以关闭连接,但还是不相信网络,怕服务器不知道关闭,于是发送ACK,进入TIME_WAIT状态 。如果服务器没有收到ACK,他可以重新传输它 。服务器收到ACK后,“就知道可以断开连接了” 。等待2MSL后,客户端仍然收不到回复,证明服务器正常关闭 。我的客户也可以关闭连接 。好了,TCP连接关闭!


推荐阅读