可靠性,TCP要求通信双方都建立连接,并有差错控制机构,因此是可靠传输。而UDP传输只有源端口,目标端口,校验码。所以相对TCP不可靠。
安全性,由于UDP没有TCP复杂的可靠性和差错控制机构,所以安全性也比较弱。
传输效率,TCP的每次传输都要建立连接,UDP不需要。所以相对于对网络实时性有要求的连接,优先使用UDP,比如视频会议就使用UDP。
传输数据,TCP有滑动窗口控制机制,每次传输数据都会被TCP分成最适合传输的数据块,称为报文段。UDP协议传输应用程序数据一致保持不变。
总之,对传输的可靠性,安全性,完整性有要求就使用TCP。强调传输性和效率时就使用UDP。
单工,单方向的通信,只有一个方向的通信,没有另一个方向的交互。
半双工,双向交替通信,通信双方不能同时发送和接收消息。
全双工,双向同时通信,通信双方可以同时发送和接收消息。
非持久连接,客户端请求一个HTML页面和10个JPG图片,就需要11个TCP连接。服务器每发送一个对象时,就断开连接,没有持续到可用于传输其它对象。说明每个TCP连接都只能传输一个和响应一个消息。
持久连接,同一个TCP连接可以接受多个HTTP请求,在响应一个请求消息后,可以继续响应其它请求。
物理层,利用传输介质为数据链路层提供物理连接,屏蔽设备之间的差异,透明传输比特流。
数据链路层,在两个网络实体之间提供数据链路的创建,维持和释放。并对数据链路单元也称为帧定界,同步,发送进行控制。数据链路层提供了流量控制和差错检查,所以可将有产错的物理连接改造无差错的逻辑连接。,并对物理层原始的数据进行封装。
网络层,提供了路由和选址功能,使得处于不同网络的双方能够相互通信。网络层协议主要有ARP协议,RARP协议,IP协议,ICMP协议等。
传输层,承上为应用层提供了可靠的数据传输,启下为网络层提供了可靠度站点信息。为端到端提供传输,提供了流量控制和差错检测。传输层协议有TCP,UDP。
应用层,是用户和应用程序的接口,也提供网络服务。如DNS,HTTP,FTP,SMTP ,TELNET协议等。
应用层,为各种数据形式指定统一的格式标准,方便用户看懂。
传输层,加入了端口,明确是何应用程序传输。
网络层,加入IP地址,明确是那些网络传输。
数据链路层,加入MAC地址,明确物理主机,并且进行帧的传输。
物理层,通过传输介质在两个主机之间传输。
ARP协议是一种把IP地址转为MAC地址的机制。在同一子网中的两个主机,ARP协议发送一个数据包,包括查询目标IP地址,该数据包为广播地址,子网中的所有主机都会收到这个数据包,从中取出IP,与自身IP比较,如果相同,告诉对方MAC地址,如果不同,丢弃数据包。
CSMA/CD协议,载波侦听多点接入/碰撞检查协议,每个主机在一条总线上传输数据时,总是先检测是否有其它主机在传输,如果有等待。在传输过程中,也要监听是否有是否有冲突发生,如果有,采用截断二进制指数类型规避算法等待一段时间重新发送。总结来说就是先听先发,边听边发,冲突停发,随机重发。
PPP协议,点对点协议。直接连接在两个节点上,通过拨号或专线的方式建立连接传输数据,称为主机,网桥,路由器连接的最简单方法。PPP协议包括LCP协议,链路控制协议,用来建立,管理,配置链路。NCP协议,网路管理协议,可以使用多种网络层协议,每个网络层协议都需要NCP来配置,一个将IP数据包封装到串行链路的方法。
RIP协议,距离矢量协议。适用于小规模网络,实现简单,开销小。传输层使用UDP协议,RIP报文段为512字节。仅和邻居交换信息,交换的是整个路由表,固定时间交换。
OSPF协议,链路状态协议,向自治域中所有路由表发送链路信息。更新快,选择最佳路由,支持多路负载均衡。适用于大规模网络。
两者首先是RIP适用于小规模网络,OSPF适用于大规模网络。RIP路由计算算法使用距离矢量算法,OSPF则是开放式最短路径优先算法。RIP每隔30秒更新路由器,并发送给相邻路由器。OSPF中每个AS内的路由器学习到新的路由后,就发送给AS内的其它路由器。
流量控制,发送方来控制数据发送,不要超过接收方处理数据的速率。在传输层就是控制端到端的流量,在数据链路层就是控制相邻节点间的流量。
网络拥塞就是通信子网中某一部分分组数量过多,使得网络来不及处理,导致整个网络性能的下降,严重时会导致死锁状态。
产生拥塞原因,多条流入的线路有分组到达,并且需要同一输出线路,如果路由器没有足够的内存来存放所有分组,那么有的分组就会丢失,产生拥塞。路由器的处理速度太慢,难以完成必要的处理工作(缓冲区排队,更新路由表),即是有多余的线路,分组也要进入队列,产生拥塞。
防止拥塞在传输层,网络层,数据链路层都有解决方法。
传输层采用重传策略,乱序缓存策略,确认策略,流控制策略,确定超时策略。网络层使用分组排队和服务策略,分组丢弃策略,路由算法和分组生存管理。数据链路层采用重传策略,确认策略,流控制策略,乱序缓存策略。
TCP拥塞控制方法,慢开始,拥塞避免,快重传,快恢复。
原文:https://www.cnblogs.com/feng1014/p/12679718.html