TCP/UDP

编辑

TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于 传输层协议。其中TCP提供IP环境下的数据 可靠传输,它提供的服务包括 数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的 数据包发送。通俗说,它是事先为所发送的数据开辟出连接好的通道,然后再进行数据发送;而UDP则不为IP提供可靠性、流控或差错恢复功能。一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。TCP支持的应用协议主要有:Telnet、FTP、SMTP等;UDP支持的 应用层协议主要有:NFS( 网络文件系统)、SNMP( 简单网络管理协议)、DNS(主域名称系统)、TFTP(通用 文件传输协议)等。

2数据包编辑

对于网络管理的网络安全具有至关
 
重要的意义。比如, 防火墙的作用本质就是检测网络中的 数据包,判断其是否违反了预先设置的规则,如果违反就加以阻止。下图就是某 杀毒软件个人版 防火墙 软件设置规则的界面。细心的读者会发现,图中的“协议”栏中有“TCP”、“UDP”等名词。

3连接编辑

面向连接的TCP

“面向连接”就是在正式通信前必须要与对方建立起连接。比如你给别人打电话,必须等线路接通了、对方拿起话筒才能相互通话。
TCP(Transmission Control Protocol, 传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个TCP连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程: 主机A向主机B发出连接请求数据包:“我想给你发数据,可以吗?”,这是第一次对话;主机B向主机
 
A发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?”,这是第二次对话;主机A再发出一个数据包确认主机B的要求同步:“我现在就发,你接着吧!”,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后, 主机A才向主机B正式发送数据。
TCP协议能为 应用程序提供可靠的通信连接,使一台计算机发出的 字节流无差错地发往网络上的其他计算机,对可靠性要求高的 数据通信系统往往使用TCP协议传输数据。
我们来做一个实验,用计算机A(安装Windows 2000 Server 操作系统)从“ 网上邻居”上的一台计算机B拷贝大小为8,644,608字节的文件,通过状态栏右下角网卡的发送和接收指标就会发现:虽然是数据流是由计算机B流向计算机A,但是计算机A仍发送了3,456个数据包,如图2所示。这些数据包是怎样产生
 
的呢?因为 文件传输时使用了 TCP/IP协议,更确切地说是使用了面向连接的TCP协议,计算机A接收数据包的时候,要向计算机B回发数据包,所以也产生了一些通信量。
如果事先用 网络监视器监视网络流量,就会发现由此产生的数据流量是9,478,819字节,比文件大小多出10.96%(如图3所示),原因不仅在于 数据包和帧本身占用了一些空间,而且也在于TCP协议面向连接的特性导致了一些额外的通信量的产生。

面向非连接的UDP协议

“面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。与风行的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就OK了。
UDP(User Data Protocol, 用户数据报协议)是与TCP相对应的协议。它是 面向非连接的协议,它不与对方建立连接,而是直接就把 数据包发送过去!
 
UDP适用于一次只传送少量数据、对可靠性要求不高的应用环境。比如,我们经常使用“ping”命令来测试两台 主机之间TCP/IP通信是否正常,其实“ping”命令的原理就是向对方主机发送UDP数据包,然后对方主机确认收到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的。例如,在默认状态下,一次“ping”操作发送4个数据包(如图所示)。大家可以看到,发送的数据包数量是4包,收到的也是4包(因为对方 主机收到后会发回一个确认收到的数据包)。这充分说明了UDP协议是 面向非连接的协议,没有建立连接的过程。正因为UDP协议没有连接的过程,所以它的通信效率高;但也正因为如此,它的可靠性不如TCP协议高。QQ就使用UDP发消息,因此有时会出现收不到消息的情况。

4协议差别编辑

tcp协议和udp协议的差别
TCP协议和UDP协议各有所长、各有所短,适用于不同要求的通信环境。TCP协议和UDP协议之间的差别如附表所示。

转载于:https://www.cnblogs.com/yulang314/p/3555049.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值