网络基础知识大全 网络知识( 四 )
(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协议:开放最短路径优先开放最短路径优先,底层是迪杰的信息资源网络拉取算法,是链路状态路由协议,其路由度量是带宽和时延 。
回到顶端
7.TCP/IP协议TCP/IP协议是互联网最基本的协议,是互联网的基础,由网络层的IP协议和传输层的TCP协议组成 。一般来说,TCP负责发现传输问题,当出现问题时,它会发送信号请求重传,直到所有数据都安全正确地传输到目的地 。IP是为互联网的每个联网设备指定一个地址 。
IP层从下层(以太网设备驱动等网络接口层)接收数据包,发送到更高层——TCP或UDP层;相反,IP层还将从TCP或UDP层接收的数据包传输到较低层 。IP数据包是不可靠的,因为IP没有做任何事情来确认数据包是按顺序发送的还是损坏的 。IP数据包包含发送它的主机的地址(源地址)和接收它的主机的地址(目的地址) 。
TCP是一种面向连接的通信协议 。连接是通过三次握手建立的,当通信完成时,连接应该被移除 。因为TCP是面向连接的,所以只能用于端到端的通信 。TCP提供可靠的数据流服务,采用“带重传的肯定应答”技术,实现传输的可靠性 。TCP还使用一种称为“滑动窗口”的方法来控制流量 。所谓的窗口实际上代表了限制发送方发送速度的接收能力 。
TCP消息头格式:
TCP协议的三次握手和四波:
注:序号:“sequance”序号;Ack:“确认”确认号;SYN:“同步”请求同步标志;;确认:“确认”确认标志;FIN:“终于”结束标志 。
TCP连接建立过程:首先客户端发送连接请求消息,服务器端接受连接后回复ACK消息,并为此连接分配资源 。客户端收到确认消息后,也会向服务器段发送确认消息,并分配资源,从而建立TCP连接 。
TCP断开过程:假设客户端发起断开请求,即发送FIN消息 。服务器收到FIN消息后,意思是“我在客户端没有数据可以发送给你”,但是如果你还有数据没有发送,就不用急着关闭Socket,可以继续发送数据 。所以你先发一个ACK,“告诉客户我已经收到你的请求,但是我还没有准备好,请继续等待我的消息” 。此时,客户端进入FIN_WAIT状态,并继续等待来自服务器的FIN消息 。当服务端确定数据已经发送后,向客户端发送FIN消息,“告诉客户端,好的,我的数据已经发送出去,我准备关闭连接” 。客户端收到FIN消息后“知道可以关闭连接,但还是不相信网络,怕服务器不知道关闭,所以发送ACK后进入TIME_WAIT状态 。如果服务器没有收到确认,它可能会被重新传输 。”服务器收到确认后,“知道可以断开” 。如果客户端等待2MSL后仍未收到回复,则证明服务器已正常关闭 。我的客户也可以关闭连接 。好了,TCP连接就这样关闭了!
你为什么挥三次手?
在只有两次握手的情况下,假设客户机想要与服务器建立连接,但是由于中途连接请求的数据报丢失,客户机必须重新发送它 。此时,服务器只接收到一个连接请求,因此连接可以正常建立 。然而,有时客户端重新发送请求并不是因为数据报丢失,而是因为由于大量的网络并发,数据传输过程可能会在某个节点被阻塞 。在这种情况下,服务器端将一个接一个地接收两个请求,并等待两个客户端请求向他发送数据...这就是问题所在,客户端实际上只有一个请求,而服务器端有两个响应 。极端情况下,客户端可能会多次重发请求数据,导致服务器端最终建立N个以上的响应等待,造成极大的资源浪费!所以,“三次握手”是非常必要的!
推荐阅读
- 手袋奢侈品牌有哪些?奢侈品手袋品牌大全
- 儿童睡前笑话故事大全 儿童笑话故事
- 有趣的百科知识大全 百科知识大全
- 描写杏花的诗句有哪些-?有关杏花的诗句古诗大全
- 山药红萝卜炖排骨的做法大全家常,山药红萝卜玉米可以一起炖排骨吗?
- 路边摊炒面的做法大全窍门,路边摊炒面的做法视频?
- 凉拌绿豆芽的家常做法大全,凉拌绿豆芽需要焯水吗?
- 炒茄子时,先放油就错了,学会这个小技巧,不吸油不发黑,茄子不过油的做法大全家常?
- 红烧兔子肉的做法大全窍门窍门窍门,红烧兔子肉怎么做好吃又简单窍门?
- 菜羹的做法大全集窍门,调羹菜的做法窍门?
