TCP端口的作用、漏洞和操作建议_第1页
TCP端口的作用、漏洞和操作建议_第2页
TCP端口的作用、漏洞和操作建议_第3页
TCP端口的作用、漏洞和操作建议_第4页
TCP端口的作用、漏洞和操作建议_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、TCP端口的作用、漏洞和操作建议TCP端口的作用、漏洞和操作建议在上网的时候,我们经常会看到“端口”这个词,也会经常用到端口号,比如在FTP地址后面增加的“21”,21就表示端口号。那么端口到底是什么意思呢?怎样查看端口号呢?一个端口是否成为网络恶意攻击的大门呢?,我们应该如何面对形形色色的端口呢?下面就将介绍这方面的内容,以供大家参考。21端口:21端口主要用于FTP(File Transfer Protocol,文件传输协议)服务。端口说明:21端口主要用于FTP(File Transfer Protocol,文件传输协议)服务,FTP服务主要是为了在两台计算机之间实现文件的上传与下载,一

2、台计算机作为FTP客户端,另一台计算机作为FTP服务器,可以采用匿名(anonymous)登录和授权用户名与密码登录两种方式登录FTP服务器。目前,通过FTP服务来实现文件的传输是互联网上上传、下载文件最主要的方法。另外,还有一个20端口是用于FTP数据传输的默认端口号。在Windows中可以通过Internet信息服务(IIS)来提供FTP连接和管理,也可以单独安装FTP服务器软件来实现FTP功能,比如常见的FTP Serv-U。操作建议:因为有的FTP服务器可以通过匿名登录,所以常常会被黑客利用。另外,21端口还会被一些木马利用,比如Blade Runner、FTP Trojan、Doly

3、 Trojan、WebEx等等。如果不架设FTP服务器,建议关闭21端口。23端口:23端口主要用于Telnet(远程登录)服务,是Internet上普遍采用的登录和仿真程序。端口说明:23端口主要用于Telnet(远程登录)服务,是Internet上普遍采用的登录和仿真程序。同样需要设置客户端和服务器端,开启Telnet服务的客户端就可以登录远程Telnet服务器,采用授权用户名和密码登录。登录之后,允许用户使用命令提示符窗口进行相应的操作。在Windows中可以在命令提示符窗口中,键入“Telnet”命令来使用Telnet远程登录。操作建议:利用Telnet服务,黑客可以搜索远程登录Uni

4、x的服务,扫描操作系统的类型。而且在Windows 2000中Telnet服务存在多个严重的漏洞,比如提升权限、拒绝服务等,可以让远程服务器崩溃。Telnet服务的23端口也是TTS(Tiny Telnet Server)木马的缺省端口。所以,建议关闭23端口。25端口:25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件,如今绝大多数邮件服务器都使用该协议。端口说明:25端口为SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)服务器所开放,主要用于发送邮件,如今绝大多数邮件服务器

5、都使用该协议。比如我们在使用电子邮件客户端程序的时候,在创建账户时会要求输入SMTP服务器地址,该服务器地址默认情况下使用的就是25端口。端口漏洞:1. 利用25端口,黑客可以寻找SMTP服务器,用来转发垃圾邮件。2. 25端口被很多木马程序所开放,比如Ajan、Antigen、Email Password Sender、ProMail、trojan、Tapiras、Terminator、WinPC、WinSpy等等。拿WinSpy来说,通过开放25端口,可以监视计算机正在运行的所有窗口和模块。操作建议:如果不是要架设SMTP邮件服务器,可以将该端口关闭。53端口:53端口为DNS(Domai

6、n Name Server,域名服务器)服务器所开放,主要用于域名解析,DNS服务在NT系统中使用的最为广泛。端口说明:53端口为DNS(Domain Name Server,域名服务器)服务器所开放,主要用于域名解析,DNS服务在NT系统中使用的最为广泛。通过DNS服务器可以实现域名与IP地址之间的转换,只要记住域名就可以快速访问网站。端口漏洞:如果开放DNS服务,黑客可以通过分析DNS服务器而直接获取Web服务器等主机的IP地址,再利用53端口突破某些不稳定的防火墙,从而实施攻击。近日,美国一家公司也公布了10个最易遭黑客攻击的漏洞,其中第一位的就是DNS服务器的BIND漏洞。操作建议:如

7、果当前的计算机不是用于提供域名解析服务,建议关闭该端口。67、68端口:67、68端口分别是为Bootp服务的Bootstrap Protocol Server(引导程序协议服务端)和Bootstrap Protocol Client(引导程序协议客户端)开放的端口。端口说明:67、68端口分别是为Bootp服务的Bootstrap Protocol Server(引导程序协议服务端)和Bootstrap Protocol Client(引导程序协议客户端)开放的端口。Bootp服务是一种产生于早期Unix的远程启动协议,我们现在经常用到的DHCP服务就是从Bootp服务扩展而来的。通过Boo

8、tp服务可以为局域网中的计算机动态分配IP地址,而不需要每个用户去设置静态IP地址。端口漏洞:如果开放Bootp服务,常常会被黑客利用分配的一个IP地址作为局部路由器通过“中间人”(man-in-middle)方式进行攻击。操作建议:建议关闭该端口。69端口:TFTP是Cisco公司开发的一个简单文件传输协议,类似于FTP。端口说明:69端口是为TFTP(Trival File Tranfer Protocol,次要文件传输协议)服务开放的,TFTP是Cisco公司开发的一个简单文件传输协议,类似于FTP。不过与FTP相比,TFTP不具有复杂的交互存取接口和认证控制,该服务适用于不需要复杂交换

9、环境的客户端和服务器之间进行数据传输。端口漏洞:很多服务器和Bootp服务一起提供TFTP服务,主要用于从系统下载启动代码。可是,因为TFTP服务可以在系统中写入文件,而且黑客还可以利用TFTP的错误配置来从系统获取任何文件。操作建议:建议关闭该端口。79端口:79端口是为Finger服务开放的,主要用于查询远程主机在线用户、操作系统类型以及是否缓冲区溢出等用户的详细信息。端口说明:79端口是为Finger服务开放的,主要用于查询远程主机在线用户、操作系统类型以及是否缓冲区溢出等用户的详细信息。比如要显示远程计算机上的user01用户的信息,可以在命令行中键入“finge

10、r ”即可。端口漏洞:一般黑客要攻击对方的计算机,都是通过相应的端口扫描工具来获得相关信息,比如使用“流光”就可以利用79端口来扫描远程计算机操作系统版本,获得用户信息,还能探测已知的缓冲区溢出错误。这样,就容易遭遇到黑客的攻击。而且,79端口还被Firehotcker木马作为默认的端口。操作建议:建议关闭该端口。80端口:80端口是为HTTP(HyperText Transport Protocol,超文本传输协议)开放的,这是上网冲浪使用最多的协议,主要用于在WWW(World Wide Web,万维网)服务上传输信息的协议。端口说明:80端口是为HTTP

11、(HyperText Transport Protocol,超文本传输协议)开放的,这是上网冲浪使用最多的协议,主要用于在WWW(World Wide Web,万维网)服务上传输信息的协议。我们可以通过HTTP地址加“:80”(即常说的“网址”)来访问网站的,比如:80,因为浏览网页服务默认的端口号是80,所以只要输入网址,不用输入“:80”。端口漏洞:有些木马程序可以利用80端口来攻击计算机的,比如Executor、RingZero等。操作建议:为了能正常上网冲浪,我们必须开启80端口。99端口:99端口是用于一个名为“Metagram Relay”(

12、亚对策延时)的服务,该服务比较少见,一般是用不到的。端口说明:99端口是用于一个名为“Metagram Relay”(亚对策延时)的服务,该服务比较少见,一般是用不到的。端口漏洞:虽然“Metagram Relay”服务不常用,可是Hidden Port、NCx99等木马程序会利用该端口,比如在Windows 2000中,NCx99可以把cmdexe程序绑定到99端口,这样用Telnet就可以连接到服务器,随意添加用户、更改权限。操作建议:建议关闭该端口。109、110端口:109端口是为POP2(Post Office Protocol Version 2,邮局协议2)服务开放的,110端口

13、是为POP3(邮件协议3)服务开放的,POP2、POP3都是主要用于接收邮件的。端口说明:109端口是为POP2(Post Office Protocol Version 2,邮局协议2)服务开放的,110端口是为POP3(邮件协议3)服务开放的,POP2、POP3都是主要用于接收邮件的,目前POP3使用的比较多,许多服务器都同时支持POP2和POP3。客户端可以使用POP3协议来访问服务端的邮件服务,如今ISP的绝大多数邮件服务器都是使用该协议。在使用电子邮件客户端程序的时候,会要求输入POP3服务器地址,默认情况下使用的就是110端口端口漏洞:POP2、POP3在提供邮件接收服务的同时,也

14、出现了不少的漏洞。单单POP3服务在用户名和密码交换缓冲区溢出的漏洞就不少于20个,比如WebEasyMail POP3 Server合法用户名信息泄露漏洞,通过该漏洞远程攻击者可以验证用户账户的存在。另外,110端口也被ProMail trojan等木马程序所利用,通过110端口可以窃取POP账号用户名和密码。操作建议:如果是执行邮件服务器,可以打开该端口。111端口:111端口是SUN公司的RPC(Remote Procedure Call,远程过程调用)服务所开放的端口,主要用于分布式系统中不同计算机的内部进程通信,RPC在多种网络服务中都是很重要的组件。端口说明:111端口是SUN公司

15、的RPC(Remote Procedure Call,远程过程调用)服务所开放的端口,主要用于分布式系统中不同计算机的内部进程通信,RPC在多种网络服务中都是很重要的组件。常见的RPC服务有rpcmountd、NFS、rpcstatd、rpccsmd、rpcttybd、amd等等。在Microsoft的Windows中,同样也有RPC服务。端口漏洞:SUN RPC有一个比较大漏洞,就是在多个RPC服务时xdrarray函数存在远程缓冲溢出漏洞,通过该漏洞允许攻击者传递超113端口:113端口主要用于Windows的“Authentication Service”(验证服务)。端口说明:113端

16、口主要用于Windows的“Authentication Service”(验证服务),一般与网络连接的计算机都运行该服务,主要用于验证TCP连接的用户,通过该服务可以获得连接计算机的信息。在Windows 2000/2003 Server中,还有专门的IAS组件,通过该组件可以方便远程访问中进行身份验证以及策略管理。端口漏洞:113端口虽然可以方便身份验证,但是也常常被作为FTP、POP、SMTP、IMAP以及IRC等网络服务的记录器,这样会被相应的木马程序所利用,比如基于IRC聊天室控制的木马。另外,113端口还是Invisible Identd Deamon、Kazimas等木马默认开放

17、的端口。操作建议:建议关闭该端口。119端口:119端口是为“Network News Transfer Protocol”(网络新闻组传输协议,简称NNTP)开放的。端口说明:119端口是为“Network News Transfer Protocol”(网络新闻组传输协议,简称NNTP)开放的,主要用于新闻组的传输,当查找USENET服务器的时候会使用该端口。端口漏洞:著名的Happy99蠕虫病毒默认开放的就是119端口,如果中了该病毒会不断发送电子邮件进行传播,并造成网络的堵塞。操作建议:如果是经常使用USENET新闻组,就要注意不定期关闭该端口。135端口:135端口主要用于使用RPC

18、(Remote Procedure Call,远程过程调用)协议并提供DCOM(分布式组件对象模型)服务。端口说明:135端口主要用于使用RPC(Remote Procedure Call,远程过程调用)协议并提供DCOM(分布式组件对象模型)服务,通过RPC可以保证在一台计算机上运行的程序可以顺利地执行远程计算机上的代码;使用DCOM可以通过网络直接进行通信,能够跨包括HTTP协议在内的多种网络传输。端口漏洞:相信去年很多Windows 2000和Windows XP用户都中了“冲击波”病毒,该病毒就是利用RPC漏洞来攻击计算机的。RPC本身在处理通过TCP/IP的消息交换部分有一个漏洞,该

19、漏洞是由于错误地处理格式不正确的消息造成的。该漏洞会影响到RPC与DCOM之间的一个接口,该接口侦听的端口就是135。操作建议:为了避免“冲击波”病毒的攻击,建议关闭该端口。137端口:137端口主要用于“NetBIOS Name Service”(NetBIOS名称服务)。端口说明:137端口主要用于“NetBIOS Name Service”(NetBIOS名称服务),属于UDP端口,使用者只需要向局域网或互联网上的某台计算机的137端口发送一个请求,就可以获取该计算机的名称、注册用户名,以及是否安装主域控制器、IIS是否正在运行等信息。端口漏洞:因为是UDP端口,对于攻击者来说,通过发送

20、请求很容易就获取目标计算机的相关信息,有些信息是直接可以被利用,并分析漏洞的,比如IIS服务。另外,通过捕获正在利用137端口进行通信的信息包,还可能得到目标计算机的启动和关闭的时间,这样就可以利用专门的工具来攻击。操作建议:建议关闭该端口。139端口:139端口是为“NetBIOS Session Service”提供的,主要用于提供Windows文件和打印机共享以及Unix中的Samba服务。端口说明:139端口是为“NetBIOS Session Service”提供的,主要用于提供Windows文件和打印机共享以及Unix中的Samba服务。在Windows中要在局域网中进行文件的共享

21、,必须使用该服务。比如在Windows 98中,可以打开“控制面板”,双击“网络”图标,在“配置”选项卡中单击“文件及打印共享”按钮选中相应的设置就可以安装启用该服务;在Windows 2000/XP中,可以打开“控制面板”,双击“网络连接”图标,打开本地连接属性;接着,在属性窗口的“常规”选项卡中选择“Internet协议(TCP/IP)”,单击“属性”按钮;然后在打开的窗口中,单击“高级”按钮;在“高级TCP/IP设置”窗口中选择“WINS”选项卡,在“NetBIOS设置”区域中启用TCP/IP上的NetBIOS。端口漏洞:开启139端口虽然可以提供共享服务,但是常常被攻击者所利用进行攻击

22、,比如使用流光、SuperScan等端口扫描工具,可以扫描目标计算机的139端口,如果发现有漏洞,可以试图获取用户名和密码,这是非常危险的。操作建议:如果不需要提供文件和打印机共享,建议关闭该端口。143端口:143端口主要是用于“Internet Message Access Protocol”v2(Internet消息访问协议,简称IMAP)。端口说明:143端口主要是用于“Internet Message Access Protocol”v2(Internet消息访问协议,简称IMAP),和POP3一样,是用于电子邮件的接收的协议。通过IMAP协议我们可以在不接收邮件的情况下,知道信件的

23、内容,方便管理服务器中的电子邮件。不过,相对于POP3协议要负责一些。如今,大部分主流的电子邮件客户端软件都支持该协议。端口漏洞:同POP3协议的110端口一样,IMAP使用的143端口也存在缓冲区溢出漏洞,通过该漏洞可以获取用户名和密码。另外,还有一种名为“admv0rm”的Linux蠕虫病毒会利用该端口进行繁殖。操作建议:如果不是使用IMAP服务器操作,应该将该端口关闭。161端口:161端口是用于“Simple Network Management Protocol”(简单网络管理协议,简称SNMP)。端口说明:161端口是用于“Simple Network Management Pro

24、tocol”(简单网络管理协议,简称SNMP),该协议主要用于管理TCP/IP网络中的网络协议,在Windows中通过SNMP服务可以提供关于TCP/IP网络上主机以及各种网络设备的状态信息。目前,几乎所有的网络设备厂商都实现对SNMP的支持。在Windows 2000/XP中要安装SNMP服务,我们首先可以打开“Windows组件向导”,在“组件”中选择“管理和监视工具”,单击“详细信息”按钮就可以看到“简单网络管理协议(SNMP)”,选中该组件;然后,单击“下一步”就可以进行安装。端口漏洞:因为通过SNMP可以获得网络中各种设备的状态信息,还能用于对网络设备的控制,所以黑客可以通过SNMP

25、漏洞来完全控制网络。操作建议:建议关闭该端口。443端口:43端口即网页浏览端口,主要是用于HTTPS服务,是提供加密和通过安全端口传输的另一种HTTP。端口说明:443端口即网页浏览端口,主要是用于HTTPS服务,是提供加密和通过安全端口传输的另一种HTTP。在一些对安全性要求较高的网站,比如银行、证券、购物等,都采用HTTPS服务,这样在这些网站上的交换信息其他人都无法看到,保证了交易的安全性。网页的地址以https:/开始,而不是常见的http:/。端口漏洞:HTTPS服务一般是通过SSL(安全套接字层)来保证安全性的,但是SSL漏洞可能会受到黑客的攻击,比如可以黑掉在线银行系统,盗取信

26、用卡账号等。操作建议:建议开启该端口,用于安全性网页的访问。另外,为了防止黑客的攻击,应该及时安装微软针对SSL漏洞发布的最新安全补丁。554端口:554端口默认情况下用于“Real Time Streaming Protocol”(实时流协议,简称RTSP)。端口说明:554端口默认情况下用于“Real Time Streaming Protocol”(实时流协议,简称RTSP),该协议是由RealNetworks和Netscape共同提出的,通过RTSP协议可以借助于Internet将流媒体文件传送到RealPlayer中播放,并能有效地、最大限度地利用有限的网络带宽,传输的流媒体文件一般

27、是Real服务器发布的,包括有.rm、.ram。如今,很多的下载软件都支持RTSP协议,比如FlashGet、影音传送带等等。端口漏洞:目前,RTSP协议所发现的漏洞主要就是RealNetworks早期发布的Helix Universal Server存在缓冲区溢出漏洞,相对来说,使用的554端口是安全的。操作建议:为了能欣赏并下载到RTSP协议的流媒体文件,建议开启554端口。1024端口:1024端口一般不固定分配给某个服务,在英文中的解释是“Reserved”(保留)。端口说明:1024端口一般不固定分配给某个服务,在英文中的解释是“Reserved”(保留)。之前,我们曾经提到过动态端

28、口的范围是从102465535,而1024正是动态端口的开始。该端口一般分配给第一个向系统发出申请的服务,在关闭服务的时候,就会释放1024端口,等待其他服务的调用。端口漏洞:著名的YAI木马病毒默认使用的就是1024端口,通过该木马可以远程控制目标计算机,获取计算机的屏幕图像、记录键盘事件、获取密码等,后果是比较严重的。操作建议:一般的杀毒软件都可以方便地进行YAI病毒的查杀,所以在确认无YAI病毒的情况下建议开启该端口。1080端口:1080端口是Socks代理服务使用的端口,大家平时上网使用的WWW服务使用的是HTTP协议的代理服务。端口说明:1080端口是Socks代理服务使用的端口,

29、大家平时上网使用的WWW服务使用的是HTTP协议的代理服务。而Socks代理服务不同于HTTP代理服务,它是以通道方式穿越防火墙,可以让防火墙后面的用户通过一个IP地址访问Internet。Socks代理服务经常被使用在局域网中,比如限制了QQ,那么就可以打开QQ参数设置窗口,选择“网络设置”,在其中设置Socks代理服务。另外,还可以通过安装Socks代理软件来使用QQ,比如Socks2HTTP、SocksCap32等。端口漏洞:著名的代理服务器软件WinGate默认的端口就是1080,通过该端口来实现局域网内计算机的共享上网。不过,如Worm.Bugbear.B(怪物II)、Worm.No

30、varg.B(SCO炸弹变种B)等蠕虫病毒也会在本地系统监听1080端口,给计算机的安全带来不利。操作建议:除了经常使用WinGate来共享上网外,那么其他的建议关闭该端口。1755端口:1755端口默认情况下用于“Microsoft Media Server”(微软媒体服务器,简称MMS)。4000端口:4000端口是用于大家经常使用的QQ聊天工具的,再细说就是为QQ客户端开放的端口,QQ服务端使用的端口是8000。端口说明:1755端口默认情况下用于“Microsoft Media Server”(微软媒体服务器,简称MMS),该协议是由微软发布的流媒体协议,通过MMS协议可以在Inter

31、net上实现Windows Media服务器中流媒体文件的传送与播放。这些文件包括.asf、.wmv等,可以使用Windows Media Player等媒体播放软件来实时播放。其中,具体来讲,1755端口又可以分为TCP和UDP的MMS协议,分别是MMST和MMSU,一般采用TCP的MMS协议,即MMST。目前,流媒体和普通下载软件大部分都支持MMS协议。端口漏洞:目前从微软官方和用户使用MMS协议传输、播放流媒体文件来看,并没有什么特别明显的漏洞,主要一个就是MMS协议与防火墙和NAT(网络地址转换)之间存在的兼容性问题。操作建议:为了能实时播放、下载到MMS协议的流媒体文件,建议开启该端

32、口。5554端口:在今年4月30日就报道出现了一种针对微软lsass服务的新蠕虫病毒震荡波(Worm.Sasser),该病毒可以利用TCP 5554端口开启一个FTP服务,主要被用于病毒的传播。端口说明:4000端口是用于大家经常使用的QQ聊天工具的,再细说就是为QQ客户端开放的端口,QQ服务端使用的端口是8000。通过4000端口,QQ客户端程序可以向QQ服务器发送信息,实现身份验证、消息转发等,QQ用户之间发送的消息默认情况下都是通过该端口传输的。4000和8000端口都不属于TCP协议,而是属于UDP协议。端口漏洞:因为4000端口属于UDP端口,虽然可以直接传送消息,但是也存在着各种漏

33、洞,比如Worm_Witty.A(维迪)蠕虫病毒就是利用4000端口向随机IP发送病毒,并且伪装成ICQ数据包,造成的后果就是向硬盘中写入随机数据。另外,Trojan.SkyDance特洛伊木马病毒也是利用该端口的。操作建议:为了用QQ聊天,4000大门敞开也无妨。5632端口:5632端口是被大家所熟悉的远程控制软件pcAnywhere所开启的端口。端口说明:在今年4月30日就报道出现了一种针对微软lsass服务的新蠕虫病毒震荡波(Worm.Sasser),该病毒可以利用TCP 5554端口开启一个FTP服务,主要被用于病毒的传播。端口漏洞:在感染“震荡波”病毒后会通过5554端口向其他感染

34、的计算机传送蠕虫病毒,并尝试连接TCP 445端口并发送攻击,中毒的计算机会出现系统反复重启、运行缓慢、无法正常上网等现象,甚至会被黑客利用夺取系统的控制权限。操作建议:为了防止感染“震荡波”病毒,建议关闭5554端口。8080端口:8080端口同80端口,是被用于WWW代理服务的,可以实现网页浏览。端口说明:8080端口同80端口,是被用于WWW代理服务的,可以实现网页浏览,经常在访问某个网站或使用代理服务器的时候,会加上“:8080”端口号,比如:8080。端口漏洞:8080端口可以被各种病毒程序所利用,比如Brown Orifice(BrO)特洛伊

35、木马病毒可以利用8080端口完全遥控被感染的计算机。另外,RemoConChubo,RingZero木马也可以利用该端口进行攻击。操作建议:一般我们是使用80端口进行网页浏览的,为了避免病毒的攻击,我们可以关闭该端口TCP/IP协议详解电子版免费下载很多不同的厂家生产各种型号的计算机,它们运行完全不同的操作系统,但TCP/IP协议组件允许它们互相进行通信。这一点很让人感到吃惊,因为它的作用已远远超出了起初的设想。TCP/IP起源于60年代末美国ZF资助的一个分组交换网络研究项目,到现在90年代已发展成为计算机之间最常应用的组网形式。它是一个真正的开放系统,因为协议组件的定义及其多种实现可以不用

36、花钱或花很少的钱就可以公开地得到。它成为被称作全球互联网或因特网(Internet)的基础,该广域网(WAN)已包含超过100万台遍布世界各地的计算机。 hooctpdaohooctpdaohooctpdao一、.分层 hooctpdaohooctpdao网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议组件,比如TCP/IP,是一组不同层次上的多个协议的组合。TCP/IP通常被认为是一个四层协议系统。 hooctpdaohooctpdaoTCP/IP协议组件的四个层次 hooctpdaohooctpdao1. 链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的

37、设备驱动程序和计算机中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。 hooctpdaohooctpdao2. 网络层,有时也称作互连网层,处理分组在网络中的活动,例如分组的路由选择。在TCP/IP协议组件中,网络层协议包括IP协议(网际协议),ICMP协议(Internet互连网控制报文协议),以及IGMP协议(Internet组管理协议)。 hooctpdaohooctpdao3. 运输层,主要为两台主机上的应用程序提供端到端的通信。在TCP/IP协议组件中,有两个互不相同的传输协议:TCP(传输控制协议)和UDP(用户数据报协议)。 hooctpdaohooc

38、tpdaoTCP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。 hooctpdaohooctpdao而另一方面,UDP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。 hooctpdaohooctpdao这两种运输层协议分别在不同的应用程序中有不同的用途。 hooctpdaohooctpdao4. 应用层,负责

39、处理特定的应用程序细节。几乎各种不同的TCP/IP实现都会提供下面这些通用的应用程序: hooctpdaohooctpdaoTelnet 远程登录 hooctpdaoFTP 文件传输协议 hooctpdaoSMTP 用于电子邮件的简单邮件传输协议 hooctpdaoSNMP 简单网络管理协议hooctpdao二、通过路由器连接的两个网络 hooctpdaohooctpdao在TCP/IP协议组件中,网络层IP提供的是一种不可靠的服务。也就是说,它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可靠性保证。而另一方面,TCP在不可靠的IP层上提供了一个可靠的运输层。为了提供这种可靠的服

40、务,TCP采用了超时重传,发送和接收端到端的确认分组等机制。由此可见,运输层和网络层分别负责不同的功能。 hooctpdaohooctpdao从定义上看,一个路由器具有两个或多个网络接口层(因为它连接了两个或多个网络)。任何具有多个接口的系统英文都称作是多接口的multihomed。一个主机也可以有多个接口,但一般不称作路由器, 除非它的功能只是单纯地把分组从一个 接口传送到另一个接口。同样,路由器并不一定指那种在互连网中用来转发分组的特殊硬件盒。大多数的TCP/IP实现也允许一个多接口主机来担当路由器的功能,但是主机为此必须进行特殊的配置。在这种情况下,我们既可以称该系统为主机(当它运行某一

41、应用程序时,如FTP或Telnet),也可以称之为路由器(当它把分组从一个网络转发到另一个网络时)。我们在不同的场合下使用不同的术语。 hooctpdaohooctpdao互连网的目标之一是在应用程序中隐藏所有的物理细节。虽然这一点在由两个网络组成的互连网中并不很明显,但是应用层不能关心(也不关心)一台主机是在以太网上,而另一台主机是在令牌环网上,它们通过路由器进行互连。随着增加不同类型的物理网络,可能会有20个路由器,但应用层仍然是一样的。物理细节的隐藏使得互连网功能非常强大,也非常有用。 hooctpdaohooctpdao连接网络的另一个途径是使用网桥。网桥是在链路层上对网络进行互连,而

42、路由器则是在网络层上对网络进行互连。网桥使得多个局域网(LAN)组合在一起,这样对上层来说就好像是一个局域网。hooctpdaohooctpdaoTCP /IP倾向于使用路由器而不是网桥来连接网络hooctpdao三、TCP/IP协议组件 hooctpdaohooctpdaoTCP和UDP是两种最为著名的运输层协议,二者都使用IP作为网络层协议。 hooctpdaohooctpdao虽然TCP使用不可靠的IP服务,但它却提供一种可靠的运输层服务。 hooctpdaohooctpdaoUDP为应用程序发送和接收数据报。一个数据报是指从发送方传输到接收方的一个信息单元(例如,发送方指定的一定字节数

43、的信息)。但是与TCP不同的是,UDP是不可靠的,它不能保证数据报能安全无误地到达最终目的。SNMP(简单网络管理协议)也使用了UDP协议,但是由于它还要处理许多其他的协议,因此留到后面再进行讨论。 hooctpdaohooctpdaoIP是网络层上的主要协议,同时被TCP和UDP使用。TCP和UDP的每组数据都通过端系统和每个中间路由器中的IP层在互连网中进行传输。 hooctpdaohooctpdaoICMP是IP协议的附属协议。IP层用它来与其他主机或路由器交换错误报文和其他重要信息。尽管ICMP主要被IP使用,但应用程序也有可能访问它。两个流行的诊断工具,Ping和Traceroute

44、,它们都使用了ICMP。hooctpdaohooctpdaoIGMP是Internet组管理协议。它用来把一个UDP数据报广播(把一个UDP数据报发送到某个指定网络上的所有主机)到多个主机。 hooctpdaohooctpdaoARP(地址解析协议)和RARP(逆地址解析协议)是某些网络接口(如以太网和令牌环网)使用的特殊协议,用来转换IP层和网络接口层使用的地址。hooctpdaohooctpdao四、互连网的地址 hooctpdaohooctpdao互连网上的每个接口必须有一个唯一的Internet地址(也称作IP地址)。IP地址长32 bit。Internet地址并不采用平面形式的地址空

45、间,如1,2,3等。IP地址具有一定的结构. 这些32位的地址通常写成四个十进制的数,其中每个整数对应一个字节。这种表示方法称作“点分十进制表示法”(dotted decimal notation)。hooctpdaohooctpdao需要再次指出的是,多接口主机具有多个IP地址,其中每个接口都对应一个IP地址。 hooctpdaohooctpdao由于互连网上的每个接口必须有一个唯一的IP地址,因此必须要有一个管理机构为接入互连网的网络分配IP地址。这个管理机构就是互连网络信息中心(Internet Network Information Centre)称作InterNIC。InterNIC

46、只分配网络号。主机号的分配由系统管理员来负责。 hooctpdaohooctpdaoInternet注册服务(IP地址和DNS域名)过去由NIC来负责,其网络地址是。1993年4月1日,InterNIC成立。现在,NIC只负责处理国防数据网的注册请求,所有其他的Internet用户注册请求均由InterNIC负责处理,其网址是:。 hooctpdaohooctpdao事实上InterNIC有三部分组成:注册服务(),目录和数据库服务(),以及信息服务()

47、。 hooctpdaohooctpdaoIP地址有三类:单目传送地址(目标为单个主机),广播传送地址(目的端为给定网络上的所有主机),以及多目传送地址(目的端为同一组内的所有主机)。hooctpdaohooctpdao五、域名系统 hooctpdaohooctpdao尽管通过IP地址可以识别主机上的网络接口,进而访问主机,但是人们最喜欢使用的还是主机名。在TCP/IP领域中,域名系统(DNS)是一个分布的数据库,由它来提供IP地址和主机名之间的映射信息。 hooctpdaohooctpdao现在,我们必须理解,任何应用程序都可以调用一个标准的库函数来查看给定名字的主机的IP地址。类似地,系统还

48、提供一个逆函数给定主机的IP地址,查看它所对应的主机名。 hooctpdaohooctpdao大多数使用主机名作为参数的应用程序也可以把IP地址作为参数。如,当我们用Telnet进行远程登录时,我们既可以指定一个主机名,也可以指定一个IP地址。hooctpdaohooctpdao六、封装 hooctpdaohooctpdao当应用程序用TCP传送数据时,数据被送入协议栈中,然后逐个通过每一层直到被当作一串比特流送入网络。其中每一层对收到的数据都要增加一些首部信息(有时还要增加尾部信息)。TCP传给IP的数据单元称作TCP报文段或简称为TCP段(TCP segment)。IP传给网络接口层的数据

49、单元称作IP数据报(IP datagram)。通过以太网传输的比特流称作帧(frame)。以太网数据帧的物理特性是其长度必须在461500字节之间。hooctpdaohooctpdao所有的Internet标准和大多数有关TCP/IP的书都使用octet这个术语来表示字节。使用这个过分雕琢的术语是有历史原因的,因为TCP/IP的很多工作都是在DEC-10系统上进行的,但是它并不使用8 bit的字节。由于现在几乎所有的计算机系统都采用8 bit的字节,因此我们在此使用字节(byte)这个术语。 hooctpdaohooctpdao更准确地说,IP和网络接口层之间传送的数据单元应该是分组(pack

50、et)。分组既可以是一个IP数据报,也可以是IP数据报的一个片(fragment)。hooctpdaohooctpdaoUDP数据与TCP数据基本一致。唯一的不同是UDP传给IP的信息单元称作UDP数据报(UDP datagram),而且UDP的首部长为8字节。 hooctpdaohooctpdao由于TCP,UDP,ICMP和IGMP都要向IP传送数据,因此IP必须在生成的IP首部中加入某种标识,以表明数据属于哪一层。为此,IP在首部中存入一个长度为8比特的数值,称作协议域。1表示为ICMP协议,2表示为IGMP协议,6表示为TCP协议,17表示为UDP协议。 hooctpdaohooctp

51、dao类似地,许多应用程序都可以使用TCP或UDP来传送数据。运输层协议在生成报文首部时要存入一个应用程序的标识符。TCP和UDP都用一个16 bit的端口号来表示不同的应用程序。TCP和UDP把源端口号和目的端口号分别存入报文首部中。 hooctpdaohooctpdao网络接口分别要发送和接收IP,ARP和RARP数据,因此也必须在以太网的帧首部中加入某种形式的标识,以指明生成数据的网络层协议。为此,以太网的帧首部也有一个16 bit的帧类型域。hooctpdaohooctpdao七、分用(Demultiplexing) hooctpdaohooctpdao当目的主机收到一个以太网数据帧时

52、,数据就开始从协议栈中由底向上升,同时去掉各层协议加上的报文首部。每层协议盒都要去检查报文首部中的协议标识,以确定接收数据的上层协议。这个过程称作分用。 hooctpdaohooctpdao为协议ICMP和IGMP定位一直是一件很棘手的事情。我们把协议ICMP和IGMP与IP放在同一层上,那是因为事实上它们是IP的附属协议。但是我们又把它们放在IP层的上面,这是因为ICMP和IGMP报文都被封装在IP数据报中。 hooctpdaohooctpdao对于ARP和RARP我们也遇到类似的难题。在这里我们把它们放在以太网设备驱动程序的上方,这是因为它们和IP数据报一样,都有各自的以太网数据帧类型。但

53、,我们又把ARP作为以太网设备驱动程序的一部分,放在IP层的下面,其原因在逻辑上是合理的。 hooctpdaohooctpdao当进一步描述TCP的细节时,我们将看到协议确实是通过目的端口号,源IP地址和源端口号进行解包的。hooctpdaohooctpdao八、客户服务器模型 hooctpdaohooctpdao大部分网络应用程序在编写时都假设一端是客户,另一端是服务器,其目的是为了让服务器为客户提供一些特定的服务。 hooctpdaohooctpdao我们可以将这种服务分为两种类型:重复型或并发型。 hooctpdaohooctpdao重复型服务器通过以下步骤进行交互: hooctpdao

54、1. 等待一个客户请求的到来。 hooctpdao2. 处理客户请求。 hooctpdao3. 发送响应给发送请求的客户。 hooctpdao4. 返回步骤1。 hooctpdaohooctpdao重复型服务器主要的问题发生在2状态。在这个时候,它不能为其他客户机提供服务。 hooctpdaohooctpdao并发型服务器采用以下步骤: hooctpdao1. 等待一个客户请求的到来 hooctpdao2. 启动一个新的服务器来处理这个客户的请求。在这期间可能生成一个新的进程、任务或线程,并依赖底层操作系统的支持。这个步骤如何进行取决于操作系统。生成的新服务器对客户的全部请求进行处理。处理结束

55、后,终止这个新服务器。 hooctpdaohooctpdao3.返回步骤1。 hooctpdao并发服务器的优点在于它是利用生成其他服务器的方法来处理客户的请求。也就是说,每个客户都有它自己对应的服务器。如果操作系统允许多任务,那么就可以同时为多个客户同时服务。 hooctpdaohooctpdao我们对服务器,而不是对客户进行分类的原因是因为对于一个客户来说,它通常并不能够辨别自己是与一个重复型服务器或并发型服务器进行对话。 hooctpdaohooctpdao一般来说,TCP服务器是并发的,而UDP服务器是重复的,但也存在一些例外。hooctpdaohooctpdao九、端口号 hooct

56、pdaohooctpdao我们前面已经指出过,TCP和UDP采用16比特的端口号来识别应用程序。那么这些端口号是如何选择的呢? hooctpdaohooctpdao服务器一般都是通过人们所熟知的端口号来识别的。例如,对于每个TCP/IP实现来说,FTP服务器的TCP端口号都是21,每个Telnet服务器的TCP端口号都是23,每个TFTP(简单文件传输协议)服务器的UDP端口号都是69。任何TCP/IP实现所提供的服务都用众所周知的11023之间的端口号。这些人们所熟知的端口号由Internet端口号分配机构(Internet Assigned Numbers Authority, IANA)来管理。 hooctpdaohooctpdao到1992年为止,人们所熟知的端口号介于1255之间。2561023之间的端口号通常都是由Unix系统占用,以提供一些特定的Unix服务也就是说,提供一些只有Unix系统才有的,而其他操作系统可能不提供的服务。现在IANA管理11023之间所有的端口号。 hooctpdaohooctpdaoInternet扩展服务与Unix特定服务之间的一个差别就是Telnet和Rlogin。它们二者都允许我们通过计算机网络登录到其他主机上。Telnet是采用端口号为23的TCP/IP标准且几乎可以在所有操作系统上进行实现。相反,Rl

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论