TCP与UDP及常用知名端口

上传人:飞*** 文档编号:39929039 上传时间:2018-05-21 格式:DOCX 页数:8 大小:19.97KB
返回 下载 相关 举报
TCP与UDP及常用知名端口_第1页
第1页 / 共8页
TCP与UDP及常用知名端口_第2页
第2页 / 共8页
TCP与UDP及常用知名端口_第3页
第3页 / 共8页
TCP与UDP及常用知名端口_第4页
第4页 / 共8页
TCP与UDP及常用知名端口_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《TCP与UDP及常用知名端口》由会员分享,可在线阅读,更多相关《TCP与UDP及常用知名端口(8页珍藏版)》请在金锄头文库上搜索。

1、TCP 与 UDP 的区别,以及它们各自的定义TCP(Transmission Control Protocol,传输控制协议)是基于连接的协议,也就是说,在正式收发数据前,必须和对方建立可靠的连接。一个 TCP 连接必须要经过三次“对话”才能建立起来,其中的过程非常复杂,我们这里只做简单、形象的介绍,你只要做到能够理解这个过程即可。我们来看看这三次对话的简单过程:主机 A 向主机 B 发出连接请求数据包:“我想给你发数据,可以吗?” ,这是第一次对话;主机 B 向主机 A 发送同意连接和要求同步(同步就是两台主机一个在发送,一个在接收,协调工作)的数据包:“可以,你什么时候发?” ,这是第二

2、次对话;主机 A 再发出一个数据包确认主机 B 的要求同步:“我现在就发,你接着吧!” ,这是第三次对话。三次“对话”的目的是使数据包的发送和接收同步,经过三次“对话”之后,主机 A 才向主机 B 正式发送数据。 UDP(User Data Protocol,用户数据报协议)是与 TCP 相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去! UDP 适用于一次只传送少量数据、对可靠性要求不高的应用环境。比如,我们经常使用“ping”命令来测试两台主机之间 TCP/IP 通信是否正常,其实“ping”命令的原理就是向对方主机发送 UDP 数据包,然后对方主机确认收

3、到数据包,如果数据包是否到达的消息及时反馈回来,那么网络就是通的。例如,在默认状态下,一次“ping”操作发送 4 个数据包(如图 2 所示) 。大家可以看到,发送的数据包数量是 4 包,收到的也是 4 包(因为对方主机收到后会发回一个确认收到的数据包) 。这充分说明了 UDP 协议是面向非连接的协议,没有建立连接的过程。正因为 UDP 协议没有连接的过程,所以它的通信效果高;但也正因为如此,它的可靠性不如 TCP 协议高。QQ 就使用 UDP 发消息,因此有时会出现收不到消息的情况。 tcp 协议和 udp 协议的差别 TCP UDP 是否连接 面向连接 面向非连接 传输可靠性 可靠 不可靠

4、 应用场合 传输大量数据 少量数据 速度 慢 快从专业的角度说,TCP 的可靠保证,是它的三次握手机制,这一机制保证校验了数据,保证了他的可靠性。而 UDP 就没有了,所以不可靠。不过 UDP 的速度是 TCP 比不了的,而且 UDP 的反应速度更快,QQ 就是用 UDP 协议传输的,HTTP 是用 TCP 协议传输的,不用我说什么,自己体验一下就能发现区别了。再有就是 UDP 和 TCP 的目的端口不一样(这句话好象是多余的),而且两个协议不在同一层,TCP 在三层,UDP 不是在四层就是七层。 TCP/IP 协议介绍 TCP/IP 的通讯协议 这部分简要介绍一下 TCP/IP 的内部结构,

5、为讨论与互联网有关的安全问题打下基础。TCP/IP 协议组之所以流行,部分原因是因为它可以用在各种各样的信道和底层协议(例如 T1 和 X.25、以太网以及 RS-232 串行接口)之上。确切地说,TCP/IP 协议是一组包括 TCP 协议和 IP 协议,UDP(User Datagram Protocol)协议、ICMP(Internet Control Message Protocol)协议和其他一些协议的协议组。 TCP/IP 整体构架概述 TCP/IP 协议并不完全符合 OSI 的七层参考模型。传统的开放式系统互连参考模型,是一种通信协议的 7 层抽象的参考模型,其中每一层执行某一特定

6、任务。该模型的目的是使各种硬件在相同的层次上相互通信。这 7 层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。而 TCP/IP 通讯协议采用了 4 层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这 4 层分别为: 应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。 传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP 和 UDP 给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。互连网络层:负

7、责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。 网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line 等)来传送数据。 TCP/IP 中的协议 以下简单介绍 TCP/IP 中的协议都具备什么样的功能,都是如何工作的: 1 IP 网际协议 IP 是 TCP/IP 的心脏,也是网络层中最重要的协议。 IP 层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层-TCP 或 UDP 层;相反,IP 层也把从 TCP 或 UDP层接收来的数据包传送到更低层。

8、IP 数据包是不可靠的,因为 IP 并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP 数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。 高层的 TCP 和 UDP 服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP 地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP 确认包含一个选项,叫作 IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些 TCP 和 UDP的服务来说,使用了该选项的 IP 包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选

9、项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠 IP 源地址做确认的服务将产生问题并且会被非法入侵。 2. TCP 如果 IP 数据包中有已经封好的 TCP 数据包,那么 IP 将把它们向上传送到TCP 层。TCP 将包排序并进行错误检查,同时实现虚电路间的连接。TCP 数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。 TCP 将它的信息送到更高层的应用程序,例如 Telnet 的服务程序和客户程序。应用程序轮流将信息送回 TCP 层,TCP 层便将它们向下传送到 IP 层,设备驱动程序和物理介质,最后到接收方。 面向连

10、接的服务(例如 Telnet、FTP、rlogin、X Windows 和 SMTP)需要高度的可靠性,所以它们使用了 TCP。DNS 在某些情况下使用 TCP(发送和接收域名数据库),但使用 UDP 传送有关单个主机的信息。 3.UDP UDP 与 TCP 位于同一层,但对于数据包的顺序错误或重发。因此,UDP 不被应用于那些使用虚电路的面向连接的服务,UDP 主要用于那些面向查询-应答的服务,例如 NFS。相对于 FTP 或 Telnet,这些服务需要交换的信息量较小。使用 UDP 的服务包括 NTP(网落时间协议)和 DNS(DNS 也使用TCP)。 欺骗 UDP 包比欺骗 TCP 包更

11、容易,因为 UDP 没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与 UDP 相关的服务面临着更大的危险。 4.ICMP ICMP 与 IP 位于同一层,它被用来传送 IP 的的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP 的Redirect信息通知主机通向其他系统的更准确的路径,而Unreachable信息则指出路径有问题。另外,如果路径不可用了,ICMP 可以使 TCP 连接体面地终止。PING 是最常用的基于 ICMP 的服务。 5. TCP 和 UDP 的端口结构 TCP 和 UDP 服务通常有一个客户/服务器的关系,例如,一个 Tel

12、net 服务进程开始在系统上处于空闲状态,等待着连接。用户使用 Telnet 客户程序与服务进程建立一个连接。客户程序向服务进程写入信息,服务进程读出信息并发出响应,客户程序读出响应并向用户报告。因而,这个连接是双工的,可以用来进行读写。 两个系统间的多重 Telnet 连接是如何相互确认并协调一致呢?TCP 或 UDP 连接唯一地使用每个信息中的如下四项进行确认: 源 IP 地址 发送包的 IP 地址。 目的 IP 地址 接收包的 IP 地址。 源端口 源系统上的连接的端口。 目的端口 目的系统上的连接的端口。 端口是一个软件结构,被客户程序或服务进程用来发送和接收信息。一个端口对应一个 1

13、6 比特的数。服务进程通常使用一个固定的端口,例如,SMTP 使用 25、Xwindows 使用 6000。这些端口号是广为人知的,因为在建立与特定的主机或服务的连接时,需要这些地址和目的地址进行通讯。UDP 比起 TCP 效率更高 但是不能保证数据的完整性解析 DNS 用 UDP 主要是考虑到降低服务器的负载 降低网络流量并且 DNS 服务器的网络通常很稳定,万一失败 重试的损失也不大DNS 服务器之间的同步就必须是 TCP 了 要保证数据的正确性因为 UDP 是面向无连接 不要求准确 但是速度快DNS 解析是一种查询服务 查询要求的是速度 并不是精确度 所以使用 UDP的 如果用 TCP 一个查询要等很久的TCP 与 UDP 知名端口UDP 知名端口端口协议说明7Echo将收到的数据包会送给发送端53DNS域名服务69TFTP简单文件传输协议161SNMP简单网络管理协议162SNMP简单网络管理协议(trap)67DHCP动态主机配置文件TCP 知名端口端口协议说明7Echo将收到的数据包会送给发送端20FTP(Data)文件传送协议(数据连接)21FTP(Control)文件传送协议(控制连接)23TELNET远程登录25SMTP简单邮件传送协议53DNS域名服务80HTTP超文本传送协议110POP3邮件传送协议

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号