当前位置:首页 » 安全设置 » tcpip协议有哪些网络安全
扩展阅读
手机软件局部磨皮 2025-05-11 15:06:09

tcpip协议有哪些网络安全

发布时间: 2023-03-25 09:24:05

什么是TCPIP协议

Transmission Control Protocol/Internet Protocol的简写,中译名为传输控制协议/因特网互联协议,又名网络通讯协议,是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的协议来完成自己的需求。通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台联网设备规定一个地址。

㈡ 遇到5大安全问题应怎么 解决

在本文中,笔者重点解析了TCP/IP协议栈面临的五大网络安全问题,也介绍到企业网络安全管理人员在面临问题时所能采取的应对措施。 1. IP欺骗 IP Spoof即IP 电子欺骗,可以理解为一台主机设备冒充另外一台主机的IP地址与其他设备通信,从而达到某种目的技术。早在1985年,贝尔实验室的一名工程师Robbert Morris在他的一篇文章“A weakness in the 4.2bsd UNIX TCP/IP software”中提出了IP Spoof的概念,有兴趣的读者可参见原文:/~emv/tubed/archives/Morris_weakness_in_ TCPIP.txt 。 但要注意:单码空纯凭借IP Spoof技术不可能很好地完成一次完整的攻击,因为现有IP Spoof技术是属于一种“盲人”式的入侵手段。 一般来说,IP欺骗攻击有6个步骤: (1)首先使被信任主机的网络暂时瘫痪,以免对攻击造成干扰; (2)然后连接到目标机的某个端口来猜测ISN基值和增加规律; (3)接下来把源地址伪装成被信任主机,发送带有SYN标志的数据段请求连接; (4)然后等待目衡颂标机发送SYN+ACK包给已经瘫痪的主机; (5)最后再次伪装成被信任主机向目标机发送的ACK,此时发送的数据段带有预测的目标机的ISN+1; (6)连接建立,发送命令请求。 下面是它的两个关键步骤: (1)使被信任主机失去工作能力 为了伪装成被信任主机而不露馅,需要使其完全失去工作能力。由于攻击者将要代替真正的被信任主机,他必须确保真正的被信任主机不能收到任何有效的网络数据,否则将会被揭穿。有许多方法可以达到这个目的(如SYN洪水攻击、Land等攻击)。 (2)序列号取样和猜测 对目标主机进行攻击,必须知道目标主机的数据包序列号。通常如何进行预测呢?往往先与被攻击主机的一个端口(如25端口)建立起正常连接。通常,这个过程被重复N次,并将目标主机最后所发送的ISN存储起来。然后还需要估计他的主机与被信任主机之间的往返时间,这个时间是通过多次统计平均计算出来的。如果往返连接增加64,000,则现就可以估计出ISN的大小是128,000乘以往返时间的一半,如果此时目标主机刚刚建立过一个连接,那么再加上64,00。一旦估计出ISN的大小,就开始着手进行攻击,当然你的虚假TCP数据包进入目标主机时,如果刚才估计的序列号是准确的,进入的数据将被放置在目标机的缓冲区中。 但是在实际攻击过程中往往没这么幸运,如果估计的序列号小于正确值,那么将被放弃。而如果估计的序列号大于正确值,并且在缓冲区的大小之内,那么该数据被认为是一个未来的数据,TCP模块将等待其他缺少的数据。如果估计序列号大于期待的数字且不在缓冲区之内,TCP将会放弃它并返回一个期望获得的数据序列号。伪装成被信任的主机IP后,此时该主机仍然处在瘫痪状态,然后向目标主机的被攻击端口(如25)发送连接请求。目标主机立刻对连接请求作出反应,发更新SYN+ACK确认包给被信任主机,因为此时被信任主机仍然处于瘫痪状态,它当然无法收到这个包,紧接着攻击者向目标主机发送ACK数据包,该数据包使用前面估计的序列号加1。如果攻击者估计正确的话,目标主机将会接收该ACK。连接就正式建立起了,可以开始数据传输了。 对于来自网络外部的欺骗,防范的方法很简单,只需要在局域网的对外路由器上加一个限制设置就可以实现了,在路由器的设置里面禁止运行声称来自于网络内部的信息包。 对于来自局域网外部的IP欺骗攻击的防范则可以使用防火墙进行防范,但是对于来自内部的攻击通过设置防火墙则起不到什么作用,这个时候应该注意内部网的路由器是否支持内部接口。如果路由器支持内部网络子网的两个接口,则必须提高警惕,因为迟拦瞎它很容易受到IP欺骗。 通过对信息包的监控来检查IP欺骗攻击将是非常有效的方法,使用netlog等信息包检查工具对信息的源地址和目的地址进行验证,如果发现了信息包来自两个以上的不同地址,则说明系统有可能受到了IP欺骗攻击,防火墙外面正有黑客试图入侵系统。 2. SYN Flooding SYN Flooding是最为有效和流行的一种DoS攻击形式。它利用TCP三次握手协议的缺陷,向目标主机发送大量的伪造源地址的SYN连接请求,消耗目标主机的资源,从而不能够为正常用户提供服务。 在TCP会话初期,有所谓的“三次握手”过程:对每次发送的数据量是怎样跟踪进行协商使数据段的发送和接收同步,根据所接收到的数据量而确定的数据确认数及数据发送、接收完毕后何时撤消联系,并建立虚连接。为了提供可靠的传送,TCP在发送新的数据之前,以特定的顺序将数据包进行编号,并需要等待这些包传送给目标机之后的确认消息。TCP总是用来发送大批量的数据。当应用程序在收到数据后要做出确认时也要用到TCP。由于TCP要时刻跟踪,这需要额外开销,使得TCP的格式有些显得复杂。 TCP三次握手的步骤如下: (1)设主机A要与主机B通信,要建立一个TCP连接。首先,主机B(在这儿是服务器),必须先运行一个服务器进程,发出一个“被动找开”命令给TCP。之后服务器进程便不断探测端口,看是否有客户进程有连接请求。并处于“听”状态。客户端主机A的应用进程,向其TCP发“主动打开”命令,指明要与某个IP地址的某个端口建立TCP连接。第一次主机A的TCP便向主机B的TCP发出连接请求报文。TCP报文中指明了要连接的IP地址(隐含TP数据报指明)和端口号,设置能够接受的TCP数据段最大值,以及一些用户数据,SYN=1,ACK=0。这称为“第一次握手”。 (2)主机A的连接请求到达主机B后,主机B的TCP查看是否有进程在侦听该端口,如没有,就发送一个RST=1的应答,拒绝连接,否则将到达TCP数据段留给“侦听”进程。“侦听”进程将发回一个应答TCP报文段,其中SYN=1,ACK=1,确认序号ACKSEQ=X+1,同时自己选一个发送序号SEQ=Y。这是“第二次握手”。 (3)主机A收到主机B的确认报文后,再向主机B发出一个确认TCP报文段,其中SYN=1,ACK=1,SEQ=X+1,ACKSEQ=Y+1,这就完成了“第三次握手”。 在SYN Flooding攻击中,黑客机器向受害主机发送大量伪造源地址的TCP SYN报文,受害主机分配必要的资源,然后向源地址返回SYN+ACK包,并等待源端返回ACK包,如图1所示。由于源地址是伪造的,所以源端永远都不会返回ACK报文,受害主机继续发送SYN+ACK包,并将半连接放入端口的积压队列中,虽然一般的主机都有超时机制和默认的重传次数,但是由于端口的半连接队列的长度是有限的,如果不断地向受害主机发送大量的TCP SYN报文,半连接队列就会很快填满,服务器拒绝新的连接,将导致该端口无法响应其他机器进行的连接请求,最终使受害主机的资源耗尽。 图1 SYN Flooding攻击示意图 目前在防御SYN Flooding攻击方面有2种比较有效的技术。 (1)SYN-cookie技术 一般情况下,当服务器收到一个TCP SYN报文后,马上为该连接请求分配缓冲区,然后返回一个SYN+ACK报文,这时形成一个半连接。SYN Flooding正是利用了这一点,发送大量的伪造源地址的SYN连接请求,而不完成连接。这样就大量地消耗服务器的资源。 SYN-cookie技术针对标准TCP连接建立过程资源分配上的这一缺陷,改变了资源分配的策略。当服务器收到一个SYN报文后,不立即分配缓冲区,而是利用连接的信息生成一个cookie,并将这个cookie作为将要返回的SYN+ACK报文的初始序列号。当客户端返回一个ACK报文时,根据包头信息计算cookie,与返回的确认序列号(初始的序列号+1)的前24位进行对比,如果相同,则是一个正常连接,然后,分配资源,建立连接。 该技术的巧妙之点在于避免了在连接信息未完全到达前进行资源分配,使SYN Flooding攻击的资源消耗失效。实现的关键之处在于cookie的计算。cookie的计算应该做到包含本次连接的状态信息,使攻击者不能伪造cookie。cookie的计算过程如下。 ① 服务器收到一个SYN包后,计算一个消息摘要mac: mac = MAC(A,k) MAC是密码学中的一个消息认证码函数,也就是满足某种安全性质的带密钥的hash函数,它能够提供cookie计算中需要的安全性。A为客户和服务器双方的IP地址和端口号以及参数t的串联组合:A = SOURCE_IP SOURCE_PORT DST_IP DST_PORT t;K为服务器独有的密钥;时间参数t为32比特长的时间计数器,每64秒加1; ② 生成cookie: cookie = mac(0:24):表示取mac值的第0到24比特位; ③ 设置将要返回的SYN+ACK报文的初始序列号,设置过程如下: · 高24位用cookie代替; · 接下来的3比特位用客户要求的最大报文长度MMS代替; · 最后5比特位为t mod 32。 客户端收到来自服务器SYN+ACK报文后,返回一个ACK报文,这个ACK报文将带一个cookie(确认号为服务器发送过来的SYN ACK报文的初始序列号加1,所以不影响高24位),在服务器端重新计算cookie,与确认号的前24位比较,如果相同,则说明未被修改,连接合法,然后,服务器完成连接的建立过程。 SYN-cookie技术由于在连接建立过程中不需要在服务器端保存任何信息,实现了无状态的三次握手,从而有效地防御了SYN Flooding攻击。但是该方法也存在一些弱点。由于cookie的计算只涉及了包头的部分信息,在连接建立过程中不在服务器端保存任何信息,所以失去了协议的许多功能,比如超时重传。此外,由于计算cookie有一定的运算量,增加了连接建立的延迟时间,因此,SYN-cookie技术不能作为高性能服务器的防御手段。通常采用动态资源分配机制,即分配了一定的资源后再采用cookie技术,Linux系统中的SYN-cookie就是这样实现的。还有一个问题是,当我们避免了SYN Flooding攻击的同时,也提供了另一种拒绝服务攻击方式,攻击者发送大量的ACK报文,使服务器忙于计算验证。尽管如此,在预防SYN Flooding攻击方面,SYN-cookie技术仍然是一种有效的技术。 (2)地址状态监控的解决方法 地址状态监控的解决方法是利用监控工具对网络中的有关TCP连接的数据包进行监控,并对监听到的数据包进行处理。处理的主要依据是连接请求的源地址。 每个源地址都有一个状态与之对应,总共有四种状态: · 初态:任何源地址刚开始的状态; · NEW状态:第一次出现或出现多次也不能断定存在的源地址的状态; · GOOD状态:断定存在的源地址所处的状态; · BAD状态:源地址不存在或不可达时所处的状态。 具体的动作和状态转换根据TCP头中的位码值决定。 ① 监听到SYN包,如果源地址是第一次出现,则置该源地址的状态为NEW状态;如果是NEW状态或BAD状态;则将该包的RST位置1然后重新发出去,如果是GOOD状态不作任何处理。 ② 监听到ACK或RST包,如果源地址的状态为NEW状态,则转为GOOD状态;如果是GOOD状态则不变;如果是BAD状态则转为NEW状态;如果是BAD状态则转为NEW状态。 ③ 监听到从服务器来的SYN ACK报文(目的地址为addr),表明服务器已经为从addr发来的连接请求建立了一个半连接,为防止建立的半连接过多,向服务器发送一个ACK包,建立连接,同时,开始计时,如果超时,还未收到ACK报文,证明addr不可达,如果此时addr的状态为GOOD则转为NEW状态;如果addr的状态为NEW状态则转为BAD状态;如果为addr的状态为BAD状态则不变。 地址状态的转换图如图2所示。 图2 地址状态转换图 下面分析一下基于地址状态监控的方法如何能够防御SYN Flooding攻击。 对于一个伪造源地址的SYN报文,若源地址第一次出现,则源地址的状态为NEW状态,当监听到服务器的SYN+ACK报文,表明服务器已经为该源地址的连接请求建立了半连接。此时,监控程序代源地址发送一个ACK报文完成连接。这样,半连接队列中的半连接数不是很多。计时器开始计时,由于源地址是伪造的,所以不会收到ACK报文,超时后,监控程序发送RST数据包,服务器释放该连接,该源地址的状态转为BAD状态。之后,对于每一个来自该源地址的SYN报文,监控程序都会主动发送一个RST报文。 对于一个合法的SYN报文,若源地址第一次出现,则源地址的状态为NEW状态,服务器响应请求,发送SYN+ACK报文,监控程序发送ACK报文,连接建立完毕。之后,来自客户端的ACK很快会到达,该源地址的状态转为GOOD状态。服务器可以很好地处理重复到达的ACK包。 3. ACK Flooding ACK Flooding攻击是在TCP连接建立之后,所有的数据传输TCP报文都是带有ACK标志位的,主机在接收到一个带有ACK标志位的数据包的时候,需要检查该数据包所表示的连接四元组是否存在,如果存在则检查该数据包所表示的状态是否合法,然后再向应用层传递该数据包。如果在检查中发现该数据包不合法,例如该数据包所指向的目的端口在本机并未开放,则主机操作系统协议栈会回应RST包告诉对方此端口不存在。 这里,服务器要做两个动作:查表、回应ACK/RST。这种攻击方式显然没有SYN Flooding给服务器带来的冲击大,因此攻击者一定要用大流量ACK小包冲击才会对服务器造成影响。按照我们对TCP协议的理解,随机源IP的ACK小包应该会被Server很快丢弃,因为在服务器的TCP堆栈中没有这些ACK包的状态信息。但是实际上通过测试,发现有一些TCP服务会对ACK Flooding比较敏感,比如说JSP Server,在数量并不多的ACK小包的打击下,JSP Server就很难处理正常的连接请求。对于Apache或者IIS来说,10kbps的ACK Flooding不会构成危胁,但是更高数量的ACK Flooding会造成服务器网卡中断频率过高,负载过重而停止响应。可以肯定的是,ACK Flooding不但可以危害路由器等网络设备,而且对服务器上的应用有不小的影响。 如果没有开放端口,服务器将直接丢弃,这将会耗费服务器的CPU资源。如果端口开放,服务器回应RST。 利用对称性判断来分析出是否有攻击存在。所谓对称性判断,就是收包异常大于发包,因为攻击者通常会采用大量ACK包,并且为了提高攻击速度,一般采用内容基本一致的小包发送。这可以作为判断是否发生ACK Flooding的依据,但是目前已知情况来看,很少有单纯使用ACK Flooding攻击,通常都会和其他攻击方法混合使用,因此,很容易产生误判。 一些防火墙应对的方法是:建立一个hash表,用来存放TCP连接“状态”,相对于主机的TCP协议栈实现来说,状态检查的过程相对简化。例如,不作sequence number的检查,不作包乱序的处理,只是统计一定时间内是否有ACK包在该“连接”(即四元组)上通过,从而“大致”确定该“连接”是否是“活动的”。 4. UDP Flooding UDP Flooding是日渐猖厥的流量型DoS攻击,原理也很简单。常见的情况是利用大量UDP小包冲击DNS服务器,或Radius认证服务器、流媒体视频服务器。100kbps的UDP Flooding经常将线路上的骨干设备例如防火墙打瘫,造成整个网段的瘫痪。由于UDP协议是一种无连接的服务,在UDP Flooding攻击中,攻击者可发送大量伪造源IP地址的小UDP包。但是,由于UDP协议是无连接性的,所以只要开了一个UDP的端口提供相关服务的话,那么就可针对相关的服务进行攻击。 正常应用情况下,UDP包双向流量会基本相等,而且大小和内容都是随机的,变化很大。出现UDP Flooding的情况下,针对同一目标IP的UDP包在一侧大量出现,并且内容和大小都比较固定。 UDP协议与TCP 协议不同,是无连接状态的协议,并且UDP应用协议五花八门,差异极大,因此针对UDP Flooding的防护非常困难。其防护要根据具体情况对待。 · 判断包大小:如果是大包攻击则使用防止UDP碎片方法。根据攻击包大小设定包碎片重组大小,通常不小于1500。在极端情况下,可以考虑丢弃所有UDP碎片。 · 攻击端口为业务端口:根据该业务UDP最大包的长度设置检测UDP最大包以过滤异常流量。 · 攻击端口为非业务端口:一个是丢弃所有UDP包,可能会误伤正常业务;另一个是建立UDP连接规则,要求所有去往该端口的UDP包,必须首先与TCP端口建立TCP连接。不过这种方法需要很专业的防火墙或其他防护设备支持。 在网络的关键之处使用防火墙对来源不明的有害数据进行过滤,可以有效减轻UDP Flooding攻击。此外,在用户的网络中还应采取如下的措施。 · 禁用或过滤监控和响应服务。 · 禁用或过滤其他的 UDP 服务。 · 如果用户必须提供一些 UDP 服务的外部访问,那么需要使用代理机制来保护那种服务,保证它不会被滥用。 · 对用户的网络进行监控以了解哪些系统在使用这些服务,并对滥用的迹象进行监控。 · 对于一些小型的服务器,可以直接用防火墙添加规则的方法屏蔽掉。 5. Connection Flooding Connection Flooding是典型的并且非常的有效的利用小流量冲击大带宽网络服务的攻击方式,这种攻击方式目前已经越来越猖獗。这种攻击的原理是利用真实的IP地址向服务器发起大量的连接,并且建立连接之后很长时间不释放,占用服务器的资源,造成服务器上残余连接(WAIT状态)过多,效率降低,甚至资源耗尽,无法响应其他客户所发起的连接。 其中一种攻击方法是每秒钟向服务器发起大量的连接请求,这类似于固定源IP的SYN Flooding攻击,不同的是采用了真实的源IP地址。通常这可以在防火墙上限制每个源IP地址每秒钟的连接数来达到防护目的。但现在已有工具采用慢速连接的方式,也即几秒钟才和服务器建立一个连接,连接建立成功之后并不释放并定时发送垃圾数据包给服务器使连接得以长时间保持。这样一个IP地址就可以和服务器建立成百上千的连接,而服务器可以承受的连接数是有限的,这就达到了拒绝服务的效果。 另外,蠕虫大规模爆发的时候,由于蠕虫代码比较简单,传播过程中会出现大量源IP地址相同的包,对于 TCP 蠕虫,则表现为大范围扫描行为。这是在判断Connection Flooding时需要注意的。 该攻击的一般表现形式是:在受攻击的服务器上使用netstat –an命令来查看,会发现大量连接状态来自少数的几个源。如果统计的话,可以看到连接数对比平时出现异常。并且增长到某一阈值之后开始波动,说明此时可能已经接近性能极限。因此,对这种攻击的判断原则为:在流量上体现并不大,甚至可能会很小;出现大量的ESTABLISH状态;新建的ESTABLISH状态总数有波动。 防范该攻击主要有如下方法。 · 主动清除残余连接。 · 对恶意连接的IP进行封禁。 · 限制每个源IP的连接数。 · 可以对特定的URL进行防护。 · 反查Proxy后面发起HTTP Get Flood的源。

㈢ 什么是tcpiptcpip各有什么作用

TCP/IP的通讯协议

这部分简要介绍一下TCP/IP的内部结构,为讨论与互联网有关的安全问题打下基础。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层抽象的参考模型,其中每一层执行某一特定任务。该模型的目的是使各种硬件在相同的层次上相互通信。这7层是:物理层、数据链路层、网路层、传输层、话路层、表示层和应用层。而TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:

应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。

传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCP和UDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。

互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。

网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(如Ethernet、Serial Line等)来传送数据。

TCP/IP中的协议

以下简单介绍TCP/IP中的协议都具备什么样的功能,都是如何工作的:

1. IP

网际协议IP是TCP/IP的心脏,也是网络层中最重要的协议。

IP层接收由更低层(网络接口层例如以太网设备驱动程序)发来的数据包,并把该数据包发送到更高层---TCP或UDP层;相反,IP层也把从TCP或UDP层接收来的数据包传送到更低层。IP数据包是不可靠的,因为IP并没有做任何事情来确认数据包是按顺序发送的或者没有被破坏。IP数据包中含有发送它的主机的地址(源地址)和接收它的主机的地址(目的地址)。

高层的TCP和UDP服务在接收数据包时,通常假设包中的源地址是有效的。也可以这样说,IP地址形成了许多服务的认证基础,这些服务相信数据包是从一个有效的主机发送来的。IP确认包含一个选项,叫作IP source routing,可以用来指定一条源地址和目的地址之间的直接路径。对于一些TCP和UDP的服务来说,使用了该选项的IP包好象是从路径上的最后一个系统传递过来的,而不是来自于它的真实地点。这个选项是为了测试而存在的,说明了它可以被用来欺骗系统来进行平常是被禁止的连接。那么,许多依靠IP源地址做确认的服务将产生问题并且会被非法入侵。

2. TCP

如果IP数据包中有已经封好的TCP数据包,那么IP将把它们向‘上’传送到TCP层。TCP将包排序并进行错误检查,同时实现虚电路间的连接。TCP数据包中包括序号和确认,所以未按照顺序收到的包可以被排序,而损坏的包可以被重传。

TCP将它的信息送到更高层的应用程序,例如Telnet的服务程序和客户程序。应用程序轮流将信息送段兆回TCP层,TCP层便将它们向下传送到IP层,设备驱动程序和物樱察理介质,最后到接收方。

面向连接的服务(例如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包更容易,因为UDP没有建立初始化连接(也可以称为握手)(因为在两个系统间没有虚电路),也就是说,与UDP相关的服务面临着更大的危险。

4.ICMP

ICMP与IP位于同一层,它被用来传送IP的的控制信息。它主要是用来提供有关通向目的地址的路径信息。ICMP的‘Redirect’信息通知主机通向其他系统的更准确的路径,而‘Unreachable’信息则指出路径有问题。另外,如果路径不可用了,ICMP可以使TCP连接‘体面地’终止。PING是最常用的基于ICMP的服务。

5. TCP和UDP的端口结构

TCP和UDP服务通常有一个客户/服务器的关系,例如,一个Telnet服务进程开始在系统上处于空闲状态,等待着连接。用户使用Telnet客户程序与服务进程建立一个连接。客户程序向服务进程写入信息,服务进程读出信息并发出响应,客户程序读出响应并向用户报告。因而,这个连接是双工的,可以用来进行读写。

两个系统间的多重Telnet连接是如何相互确认并协调一致呢?TCP或UDP连接唯一地使用每个信息中的如下四项进行确认:

源IP地址 发送包的IP地址。

目的IP地址 接收包的IP地址。

源端口 源系统上的连接的端口。

目的端口 目的系统上的连接的端口。

端口是一个软件结构,被客户程序或服务进程用来发送和接收信息。一个端口对应一个16比特的数。服务进程通常使用一个固定的端口,例如,SMTP使用25、Xwindows使用6000。这些端口号是‘广为人知’的,因为在建立与特定的主机或服务的连接时,需要这些地址和目的地址进行通讯。

㈣ tcpip协议详解 tcpip协议具体包括哪些内容

1、应用层:

向用户提供一组常用的应用程序,比如电子邮备樱灶件、文件传输访问、远程登录等。远程登录TELNET使用TELNET协议提供在网络其它主机上注册的接口。TELNET会话提供了基于字符的虚拟终端。文件传输访问FTP使用FTP协议来提供网络内机器间的文件拷贝功能。

2、传输层:

提供应用程序间的通信。其功能包括:一、格式化信息流;二、提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认,并且假如分组丢失,必须重新发送。

3、网颂明络层:

负责相邻计算机之间的通信。其功能包括三方面。

(1)处理来自传输层的分组发送请求,收到请求后,将分组装入IP数据报,填充报头,选择去往信宿机的路径,然后将数据报发往适当的网络接口。

(2)处理输入数据报:首先检查其合法性,然后进行寻径--假如该数据报已到达信宿机,则去掉报头,将剩下部分交给适当的传输协议;假如该数据报尚未到达信宿,则转发该数据报。

(3)处理路径、流控、拥塞等问题。

4、网络接口层:

这是TCP/IP软件的最低层,负责接收IP数据报并通过网络发送之,或者从网络上接收物理帧,抽出IP数据报,交给仿扮IP层。

㈤ TCP/IP网络体系结构中,各层内分别有什么协议,每一种协议的作用是什么

一、TCP/IP网络体系结构中,常见的接口层协议有:
Ethernet 802.3、Token Ring 802.5、X.25、Frame relay、HDLC、PPP ATM等。
1.网络层
网络层包括:IP(Internet Protocol)协议、ICMP(Internet Control Message Protocol) 、控制报文协议、ARP(Address Resolution Protocol)地址转换协议、RARP(Reverse ARP)反向地址转换协议。
2.传输层
传输层协议主要是:传输控制协议TCP(Transmission Control Protocol)和用户数据报协议UDP(User Datagram protocol)。
3.应用层
应用层协议主要包括如下几个:FTP、TELNET、DNS、SMTP、RIP、NFS、HTTP。

二、TCP/IP网络体系结构中,每一种协议的作用有:

  1. TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。

2.TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(Token Ring Network)、拨号线路(Dial-up line)、X.25网以及所有的网络传输硬件。

3.统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有惟一的地址

4.标准化的高层协议,可以提供多种可靠的用户服务。

㈥ TCP和IP协议的主要功能是什么

主要功能:TCP/IP提供点对点的链接机制,将数据应该如何封装、寻址、传输、路轮衡由以及在目的地如何接收,都加以标准化。

通俗而言:TCP负责发现传输的问题,一有问题就发出信号,要求重新传输,直到所有数据安全正确地传输到目的地。而IP是给因特网的每一台电脑规定一个地址,并解决如何发现和找到这个地址。

主要特点:

1、TCP/IP协议不依赖于任何特定的计算机硬件或操作系统,提桐如供开放的协议标准,即使不考虑Internet,TCP/IP协议也获得了广泛的支持。所以TCP/IP协议成为一种联合各种硬件和软件的实用系统。

2、TCP/IP协议并不依赖于特定的网络传输硬件,所以TCP/IP协议能够集成各种各样的网络。用户能够使用以太网(Ethernet)、令牌环网(Token Ring Network)、拨号线路(Dial-up line)、X.25网以及所有的网络传输硬件。

3、统一的网络地址分配方案,使得整个TCP/IP设备在网中都具有唯一的地址。

4、标准化的高层协议,可以提供多种可靠的用户服务。

(6)tcpip协议有哪些网络安全扩展阅读:

主要缺点

第一,它在服务、接口与协议的区别上就不是很清楚。一个好的软件工程应该将功能与实现方法区分开来,TCP/IP恰恰没有很好地做到这点,就使得TCP/IP参考模型对于使用新的技术的指导意义是不够的。TCP/IP参考模型不适合于其他非TCP/IP协议簇。

第二,主机-网络层本身并不是实际的一层,它定义了网络层与数据链路层的接口。物理层与数据链路层的划分是必要和合理的,一个好的参考模型应该将它局桐启们区分开,而TCP/IP参考模型却没有做到这点。

㈦ 网络通讯协议有哪几种

1、TCP/IP协议

TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议) 协议具有很强的灵活性,支持任意规模的网络,几乎可连接所有服务器和工作站。

在使用TCP/IP协议时需要进行复杂的设置,每个结点至少需要一个“IP地址”、一个“子网掩码”、一个“默认网关”、一个“主机名”,对于一些初学者来说使用不太方便。

2、IPX/SPX及其兼容协议

IPX/SPX(Internetwork Packet Exchange/Sequences Packet Exchange,网际包交换/顺序包交换)是Novell公司的通信协议集。IPX/SPX具有强大的路由功能,适合于大型网络使用。

当用户端接入NetWare服务器时,IPX/SPX及其兼容协议是最好的选择。但在非Novell网络环境中,IPX/SPX一般不使用。

3、NetBEUI协议

NetBEUI(NetBios Enhanced User Interface , NetBios增强用户接口)协议是一种短小精悍、通信效率高的广播型协议,安装后不需要进行设置,特别适合于在“网络邻居”传送数据。


(7)tcpip协议有哪些网络安全扩展阅读:

协议的使用建议

1、根据网络条件选择:

如网络存在多个网段或要通过路由器相连时,就不能使用不具备路由和跨网段操作功能的NetBEUI协议,而必须选择IPX/SPX或TCP/IP等协议。

2、尽量减少协议种类:

一个网络中尽量只选择一种通信协议,协议越多,占用计算机的内存资源就越多,影响了计算机的运行速度,不利于网络的管理。

3、注意协议的版本:

每个协议都有其发展和完善的过程,因而出现了不同的版本,每个版本的协议都有它最为合适的网络环境。在满足网络功能要求的前提下,应尽量选择高版本的通信协议。

4、协议的一致性:

如果要让两台实现互联的计算机间进行对话,它们使用的通信协议必须相同。否则,中间需要一个“翻译”进行不同协议的转换,不仅影响了网络通信速率,同时也不利于网络的安全、稳定运行。

㈧ TCPIP协议簇具体的协议有哪些

TCP/IP(传输控制协议/网间协议)是一种网络通信协议,它规范了网络上的所有通信设备,尤其是一个主机与另一个主机之间的数据往来格式以及传送方式。TCP/IP是INTERNET的基础协议,也是一种电脑数据打包和寻址的标准方法。在数据传送中,可以形象地理解为有两个信封,TCP和IP就像是信封,要传递的信息被划分成若干段,每一段塞入一个TCP信封,缺态并在该信封面上记录有分段号的信息,再将TCP信封塞入IP大派坦信封,发送上网。在接受端,一个TCP软件包收集信封,抽出数据,按发送前的顺序尘扮桐还原,并加以校验,若发现差错,TCP将会要求重发。因此,TCP/IP在INTERNET中几乎可以无差错地传送数据。在任何一个物理网络中,各站点都有一个机器可识别的地址,该地址叫做物理地址.物理地址有两个

㈨ TCP/IP网际层中的主要协议有哪些

2.1应用层协议
2.1.1POP3协议
POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
2.1.2FTP协议

文件传输协议(File Transfer Protocol,FTP)是用于在网络上进行文件传输的一套标准协议,它工作在 OSI 模型的第七层, TCP 模型的第四层, 即应用层, 使用 TCP 传输而不是 UDP, 客户在和服务器建立连接前要经过一个“三次握手”的过程, 保证客户与服务器之间的连接是可靠的, 而且是面向连接, 为数据传输提供可靠保证。
2.1.3HTTP协议

HTTP 协议一般指 HTTP(超文本传输协议)。超文本传输协议(英语:HyperText Transfer Protocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议,是因特网上应用最为广泛的一种网络传输协议,所有的 WWW 文件都必须遵守这个标准。HTTP是一个基于TCP/IP通信协议来传递数据(HTML 文件, 图片文件, 查询结果等)。
2.1.4TeInet协议

Telnet协议是 TCP/IP协议 族中的一员,是Internet远程登录服务的标准协议和主要方式。 它为用户提供了在本地计算机上完成远程 主机 工作的能力。 在 终端 使用者的电脑上使用telnet程序,用它连接到 服务器 。
2.1.5SMTP协议

SMTP 的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。SMTP 认证,简单地说就是要求必须在提供了账户名和密码之后才可以登录 SMTP 服务器,这就使得那些垃圾邮件的散播者无可乘之机。增加 SMTP 认证的目的是为了使用户避免受到垃圾邮件的侵扰。
2.1.6Samba协议

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成。SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务。SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统、打印机及其他资源。通过设置“NetBIOS over TCP/IP”使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源。
2.1.7CIFS协议

CIFS 是一个新提出的协议,它使程序可以访问远程Internet计算机上的文件并要求此计算机提供服务。CIFS 使用客户/服务器模式。客户程序请求远在服务器上的服务器程序为它提供服务。服务器获得请求并返回响应。CIFS是公共的或开放的SMB协议版本,并由Microsoft使用。SMB协议在局域网上用于服务器文件访问和打印的协议。像SMB协议一样,CIFS在高层运行,而不像TCP/IP协议那样运行在底层。CIFS可以看做是应用程序协议如文件传输协议和超文本传输协议的一个实现。
2.1.8DHCP协议

DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。
2.1.9TFTP协议

TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。端口号为69。
2.1.10SNMP协议

简单网络管理协议(SNMP) 是专门设计用于在 IP 网络管理网络节点(服务器、工作站、路由器、交换机及HUBS等)的一种标准协议,它是一种应用层协议。
2.1.11DNS协议

域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。DNS使用UDP端口53。当前,对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。
2.2传输层协议

2.2.1TCP协议
传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793 定义。TCP旨在适应支持多网络应用的分层协议层次结构。 连接到不同但互连的计算机通信网络的主计算机中的成对进程之间依靠TCP提供可靠的通信服务。TCP假设它可以从较低级别的协议获得简单的,可能不可靠的数据报服务。 原则上,TCP应该能够在从硬线连接到分组交换或电路交换网络的各种通信系统之上操作。
2.2.2UDP协议

协议集支持一个无连接的传输协议,该协议称为用户数据报协议(UDP,User Datagram Protocol)。UDP 为应用程序提供了一种无需建立连接就可以发送封装的 IP 数据包的方法。RFC 768 [1] 描述了 UDP。Internet 的传输层有两个主要协议,互为补充。无连接的是 UDP,它除了给应用程序发送数据包功能并允许它们在所需的层次上架构自己的协议之外,几乎没有做什么特别的事情。面向连接的是 TCP,该协议几乎做了所有的事情。
2.3网络层协议
2.3.1IP协议
IP是Internet Protocol(网际互连协议)的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。
2.3.2ICMP协议

ICMP(Internet Control Message Protocol)Internet控制报文协议。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。
2.3.3IGMP协议

Internet 组管理协议称为IGMP协议(Internet Group Management Protocol),是因特网协议家族中的一个组播协议。该协议运行在主机和组播路由器之间。IGMP协议共有三个版本,即IGMPv1、v2 和v3。
2.3.4ARP协议

地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。主机发送信息时将包含目标IP地址的ARP请求广播到局域网络上的所有主机,并接收返回消息,以此确定目标的物理地址;收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源。地址解析协议是建立在网络中各个主机互相信任的基础上的,局域网络上的主机可以自主发送ARP应答消息,其他主机收到应答报文时不会检测该报文的真实性就会将其记入本机ARP缓存;由此攻击者就可以向某一主机发送伪ARP应答报文,使其发送的信息无法到达预期的主机或到达错误的主机,这就构成了一个ARP欺骗。ARP命令可用于查询本机ARP缓存中IP地址和MAC地址的对应关系、添加或删除静态对应关系等。相关协议有RARP、代理ARP。NDP用于在IPv6中代替地址解析协议。
2.3.5RARP协议

反向地址转换协议(RARP:Reverse Address Resolution Protocol) 反向地址转换协议(RARP)允许局域网的物理机器从网关服务器的 ARP 表或者缓存上请求其 IP 地址。网络管理员在局域网网关路由器里创建一个表以映射物理地址(MAC)和与其对应的 IP 地址。当设置一台新的机器时,其 RARP 客户机程序需要向路由器上的 RARP 服务器请求相应的 IP 地址。假设在路由表中已经设置了一个记录,RARP 服务器将会返回 IP 地址给机器,此机器就会存储起来以便日后使用。 RARP 可以使用于以太网、光纤分布式数据接口及令牌环 LAN

㈩ TCP/IP协议特点

TCP/IP协议能够迅速发展起来并成为事实上的标准,是它恰好适应了世界范围内数据通信的需要。它有以下特点:

(1)协议标准是完全开放的,并且独立于特定的计算机硬件与操作系统。

(2)独立于网络硬件系统,可以运行在广域网,更适合于互联网。

(3)网络地址统一分配,网络中每一设备和终端都具有一个唯一地址。

(4)高层协议标准化,可以提供多种多样可靠网络服务。

(10)tcpip协议有哪些网络安全扩展阅读:

TCP/IP模型和协议的缺点:

(1)该模型没有明显地区分服务、接口和协议的概念。因此,对于使用新技术来设计新网络,TCP/IP模型不是一个太好的模板。

(2)TCP/IP模型完全不是通用的,并且不适合描述除TCP/IP模型之外的任何协议栈。

(3)链路层并不是通常意义上的一层。它是一个接口,处于网络层和数据链路层之间。接口和层间的区别是很重要的。

(4)TCP/IP模型不区分物理层和数据链路层。这两层完全不同,物理层必须处理铜缆、光纤和无线通信的传输特征;而数据链路层的工作是确定帧的开始和结束,并且按照所需的可靠程度把帧从一端发送到另一端。