一、TCP和UDP区别
协议层 | 协议 |
---|---|
![]() |
![]() |
TCP(传输控制协议)和UDP(用户数据报协议)
TCP为两台主机提供高可靠性的数据通信,包括把应用层程序交给他的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提高了高可靠性的端到端通信,因此应用层可以忽略所有这些细节。
UDP为应用层提供一种非常简单的服务。他只能乘坐数据报的分组从一台主机发送到另一台主机,不保证数据宝能够到达另一端。任何必需的可靠性有应用层来提供。
二、IP地址
互联网地址是采用结构性的,五类不同的地址格式如图:
这些32位地址通常写成4个十进制数,其中每个整数对应一个字节。即,“点分十进制表示法”,例如我们常用的IP地址“192.168.1.0”是一个B类地址。
区分各类地址最简单的方法是看它第一个十进制整数,如图:
A、B和C类地址支持单播通信,D类地址支持IP多播;
从功能上分有三类IP地址:
- 单播地址:目的为单个主机;
- 广播地址:目的端为给定网络上的所有主机;
- 多播地址:目的端为同一组内的所有主机;
广播和多播仅用于UDP;
TCP是面向的协议:运行于两台主机(由IP确定)内的两进程(端口确定)之间存在的一条连接;
三、广播
1 受限的广播
受限广播: 地址为255.255.255.255
路由器不转发摸底地址为受限的广播地址数据包;
2 指向网络的广播
指向网络的广播: 地址是主机号全为1的地址。A类网络广播地址为netid.255.255.255,其中netid为A类网络的网络号。
路由器必须撞他指向网络的广播。
3 指向子网的广播
指向子网的广播: 指向子网的广播地址为全为1且有特定子网号的地址。作为子网的直接广播地址,IP地址需要了解子网掩码。
例如:路由器收到发往128.1.2.255的数据报,当B类网络128.1的子网掩码为255.255.255.0时,该地址就是指向子网的广播地址;如果该子网掩码为255.255.254.0,该地址就不是指向子网的广播地址。
4 指向所有子网的广播
指向所有子网的广播: 需要了解目的网络的子网掩码,以便于指向网络的广播地址区分开。指向所有子网的广播地址的子网号即主机号全为1.
例如:如果目的子网掩码为255.255.255.0,那么ID地址128.1.255.255是一个指向所有子网的广播地址。而,如果网络没有划分子网,这就是一个指向网络的广播。
四、多播
IP多播提供两种服务:
-
向多个目的地址发送数据:例如,交互式会议系统和向多个接受者分发邮件或新闻。如果不采用TCP来完成(向每个目的地址传送一个单独的数据复制)。然而即使采用多播,某些应用可能继续采用TCP来保证可靠性。
-
客户对服务器的请求:例如,无盘工作站需要确定启动引导服务器。BOOTP
总结
- TCP保证两端口之间的可靠性传输;
- UDP不保证传输的可靠性;