传输层协议TCP和UDP

TCP
TCP允许一个主机同时运行多个应用进程。每台主机可以拥有多个应用 端口,每对端口号、源和目标IP地址的组合唯一地标识了一个会话。端 口分为知名端口和动态端口。有些网络服务会使用固定的端口,这类端 口称为知名端口,端口号范围为0-1023。如FTP、HTTP、Telnet、 SNMP服务均使用知名端口。动态端口号范围从1024到65535,这些端 口号一般不固定分配给某个服务,也就是说许多服务都可以使用这些端 口。只要运行的程序向系统提出访问网络的申请,那么系统就可以从这 些端口号中分配一个供该程序使用。
windows的知名端口列表可以参考下面这篇文章:
windows端口大全

常见的协议对应的端口号:
DHCP客户端

  1. DHCP 服务器端——67
  2. DHCP 客户端——68
  3. POP3——109
  4. SMIP——25
  5. Telnet——23
  6. FTP——20和21,其中20端口用于传输数据,21端口用于控制信令的传输.
  7. HTTP——80

TCP头的信息

想了解更多,请参考:
TCP 分析的相关文章

UDP
当应用程序对传输的可靠性要求不高,但是对传输速度和延迟要求较高 时,可以用UDP协议来替代TCP协议在传输层控制数据的转发。UDP将 数据从源端发送到目的端时,无需事先建立连接。UDP采用了简单、易 操作的机制在应用程序间传输数据,没有使用TCP中的确认技术或滑动 窗口机制,因此UDP不能保证数据传输的可靠性,也无法避免接收到重 复数据的情况。

UDP报文分为UDP报文头和UDP数据区域两部分。报头由源端口、目的 端口、报文长度以及校验和组成。UDP适合于实时数据传输,如语音和 视频通信。相比于TCP,UDP的传输效率更高、开销更小,但是无法保 障数据传输的可靠性。UDP头部的标识如下: 1. 16位源端口号:源主机的应用程序使用的端口号。 2. 16位目的端口号:目的主机的应用程序使用的端口号。 3. 16位UDP长度:是指UDP头部和UDP数据的字节长度。因为UDP头 部长度为8字节,所以该字段的最小值为8。 4. 16位UDP校验和:该字段提供了与TCP校验字段同样的功能;该字 段是可选的。

主机A发送数据包时,这些数据包是以有序的方式发送到网络中的,每 个数据包独立地在网络中被发送,所以不同的数据包可能会通过不同的 网络路径到达主机B。这样的情况下,先发送的数据包不一定先到达主 机B。因为UDP数据包没有序号,主机B将无法通过UDP协议将数据包 按照原来的顺序重新组合,所以此时需要应用程序提供报文的到达确认 、排序和流量控制等功能。通常情况下,UDP采用实时传输机制和时间 戳来传输语音和视频数据。

UDP适合传输对延迟敏感的流量,如语音和视频。 在使用TCP协议传输数据时,如果一个数据段丢失或者接收端对某个数 据段没有确认,发送端会重新发送该数据段。 TCP重新发送数据会带来传输延迟和重复数据,降低了用户的体验。对 于迟延敏感的应用,少量的数据丢失一般可以被忽略,这时使用UDP传 输将能够提升用户的体验。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 传输层协议TCPUDP在建立连接时有所不同TCP是一种面向连接的协议,在建立连接之前,客户端和服务器端必须经过三次握手。在第一次握手中,客户端向服务器端发送连接请求报文段,服务器端收到后回复确认报文段。在第二次握手中,服务器端向客户端发送确认报文段,客户端收到后回复确认报文段。在第三次握手中,客户端向服务器端发送确认报文段,服务器端收到后回复确认报文段。这样,客户端和服务器端之间就建立了一条可靠的连接。 UDP是一种无连接的协议,在发送数据之前并不需要建立连接。客户端直接向服务器端发送数据报文,服务器端收到后回复数据报文。因为UDP是无连接的,所以数据传输的可靠性要低于TCP。但是,UDP的传输速度要快于TCP,因为它不需要建立连接和进行三次握手。 ### 回答2: 传输层协议TCP(Transmission Control Protocol)和UDP(User Datagram Protocol)在建立连接的方式上存在一些不同TCP是一种面向连接的协议,其建立连接采用三次握手的方式。首先,客户端向服务器发送一个连接请求报文段,服务器接收到请求后,回复一个确认报文段作为回答。然后,客户端再向服务器发送一个确认报文段,服务器接收到后,连接建立成功。这种方式可以保证数据的可靠性和完整性,但创建连接的过程相对较慢,会占用一定的网络资源。 UDP是一种无连接的协议,其不需要建立连接。在使用UDP进行数据传输时,发送方直接将数据报发送给接收方。接收方不需要回复确认报文段或者进行其他握手操作,可以直接从数据报中提取数据。这种方式的优点是传输开销小、响应速度快,但没有建立连接的过程,无法保证数据的可靠性和顺序性。 总结来说,TCP通过三次握手的方式建立连接,以保证数据的可靠传输;而UDP则是无连接的传输方式,无需建立连接,适用于实时性要求高、数据传输简单的场景。具体应用中,根据实际需求和网络状况的不同,选择合适的传输层协议进行数据传输。 ### 回答3: 传输层协议TCP(传输控制协议)和UDP(用户数据报协议)在建立连接的方式上有以下几点不同: 1. TCP建立连接的方式是通过三次握手,而UDP没有建立连接的过程。TCP使用三次握手来确保通信的可靠性和数据的完整性。首先,客户端发送一个SYN(同步)包给服务器端,服务器端接收到后回复一个SYN/ACK(同步/确认)包,表明服务器准备就绪;最后,客户端再发送一个ACK(确认)包给服务器,建立连接。而UDP不需要提前建立连接,直接发送数据包。 2. TCP通过可靠性确认和拥塞控制来确保数据传输的可靠性。TCP协议会检查数据包的丢失、重复、排序等情况,并根据需要重新传输丢失的数据。而UDP在传输层并没有负责这些可靠性的机制,它仅仅负责将数据封装成数据包发送给目标地址。 3. TCP是面向连接的传输协议,确保数据的有序到达目标地址,因此在数据传输过程中需要维护连接状态,占用的资源相对较多。而UDP是无连接的传输协议,发送数据时不需要建立连接和维护连接状态,因此资源消耗较小。 4. TCP提供流量控制和拥塞控制机制,根据网络状况调整传输速率,防止网络拥塞。而UDP没有自带的流量控制和拥塞控制机制,数据的传输速率控制需要应用层自己实现。 综上所述,TCPUDP在建立连接的方式、传输可靠性和资源消耗上都存在较大的差异。选择使用TCPUDP取决于应用程序对传输要求的不同,对数据可靠性要求较高的应用常常选择TCP,而对传输效率要求较高的应用常常选择UDP
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值