zoukankan      html  css  js  c++  java
  • 一些网络协议协议

    网络协议就是计算机通过网络进行数据交换的一系列的标准,规则和规范的集合.常见的协议有TCP协议,IP协议,UDP协议,ICMP协议.这都都是传输方面的协议,还有应用层的协议如http协议,ftp协议等等,这个应用层协议是为了告诉别的计算机自己发送的数据是什么意思.

    IP协议:该协议是网络层协议,IP类似于每个主机的门牌号,通过IP来确定该数据要发给哪个主机.IP目前有两个版本IPv4和IPv6,其实IPv4是32位的二进制数,而且还被分为了ABCDE五类IP地址,IP地址=网络地址+主机地址或 IP地址=网络地址+子网地址+主机地址.IP协议只负责数据的发送和接收,对数据的准确性并不关心.不会进行重传和确认.

    TCP协议:该协议属于传输层协议,用于数据的传输.是一种可靠的传输协议,每次数据的接收都要回复一个确认信息.首先要和需要连接的主机进行连线--三次握手:首先发送连接信号,客户端等待服务端进行响应,服务器接收到连接请求会发送一个确认信息,并且为连接分配系统资源,进入等待状态,客户端收到回复以后,向服务器发送确认信息三次握手完成.要发送的数据都将切分和编号,每次数据的接收完成都要返回一个相应编号的确认信息,而且超过一定时间没有接收到确认信息,发送方则会重传该数据,如果接收方已经接收到过该数据包,则该数据包会被抛弃.返回确认信号,由于接收到数据都要返回确认信息,还有超时重传机制,使得数据传输基本上没有丢包的风险.结束传输需要四次挥手:TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送, 服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。服务器关闭客户端的连接,发送一个FIN给客户端。客户端发回ACK报文确认,并将确认序号设置为收到序号加1

    UDP协议:该协议也是传输层协议,也是用于传输数据的,是一种不可靠的传输协议,该协议不需要提前连接,而且不会重传,收到数据不用返回确认信息,使得数据的传输有丢包的风险,不过因为不用提前连接,所以消耗的资源较少,在对正确性要求低的时候可以使用该协议.该协议还多用于广播,组播等

    ICMP协议:该协议是网络层协议,不传输数据,用于查看本地主机到目标主机的网络属性,如网络是否可用,路由信息,目标主机是否可达等信息. 没有特定的端口,因为不传输数据,所以也不需要端口.

    应用层协议就是发送一些字符串,然后接收方解析该字符串,从而明白发送方需要接收方完成的动作.不涉及数据的传输.具体的以后再细说.

  • 相关阅读:
    LeetCode 227. Basic Calculator II
    LeetCode 224. Basic Calculator
    LeetCode 103. Binary Tree Zigzag Level Order Traversal
    LeetCode 102. Binary Tree Level Order Traversal
    LeetCode 106. Construct Binary Tree from Inorder and Postorder Traversal
    LeetCode 105. Construct Binary Tree from Preorder and Inorder Traversal
    LeetCode 169. Majority Element
    LeetCode 145. Binary Tree Postorder Traversal
    LeetCode 94. Binary Tree Inorder Traversal
    LeetCode 144. Binary Tree Preorder Traversal
  • 原文地址:https://www.cnblogs.com/CHYI1/p/5489891.html
Copyright © 2011-2022 走看看