附件:1.外文资料翻译译文;2.外文原文
TCP/IP介绍
在Microsoft Windows计算机上配置TCP/IP协议时,TCP/IP配置设置中需要IP地址和子网掩码,通常还需要一个默认网关。
要正确配置TCP/IP,有必要了解TCP/IP网络的寻址方式以及网络和子网的划分方式。本文旨在对IP网络和子网的概念进行一般性介绍。本文结尾包含一个术语表。
更多信息
作为Internet的网络协议,TCP/IP的成功在很大程度上归功于它将不同大小的网络和不同类型的系统连接在一起的能力。这些网络被强制定义为具有预定义大小的三个主要类(还有其他一些类别),每一类都可以由系统管理员分成更小的子网。子网掩码用于将IP地址分成两个部分。一部分标识主机(计算机),另一部分标识它所属的网络。查看IP(Internet 协议)地址并研究它的组织方式可以帮助您更好地理解IP地址和子网掩码的工作方式。
TCP的服务
尽管TCP和UDP都使用相同的网络层(IP),TCP却向应用层提供与UDP完全不同的服务。
TCP提供一种面向连接的、可靠的字节流服务。
TCP提供一种面向连接的、可靠的字节流服务。
面向连接意味着两个使用TCP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。这一过程与打电话很相似,先拨号振铃,等待对方摘机说“喂”,然后才说明是谁。
在一个TCP连接中,仅有两方进行彼此通信。广播和多播不能用于TCP。
TCP通过下列方式来提供可靠性:
应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的数据报长度将保持不变。由TCP传递给IP的信息单位称为报文段或段(segment)TCP如何确定报文段的长度。
TCP通过下列方式来提供可靠性:
应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的数据报长度将保持不变。由TCP传递给IP的信息单位称为报文段或段(segment)TCP如何确定报文段的长度。
当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能及时收到一个确认,将重发这个报文段。在第21章我们将了解tcpip协议分为哪几层作用TCP协议中自适应的超时及重传策略。
当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通
当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通
常将推迟几分之一秒
TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)。
TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输过程中的任何变化。如果收到段的检验和有差错,TCP将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)。
既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文段的到达也可能会失序。如果必要,TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。
既然IP数据报会发生重复,TCP的接收端必须丢弃重复的数据。
TCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。
既然IP数据报会发生重复,TCP的接收端必须丢弃重复的数据。
TCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。
两个应用程序通过TCP连接交换8bit字节构成的字节流。TCP不在字节流中插入记录标识符。我们将这称为字节流服务(bytestreamservice)。如果一方的应用程序先传10字节,又传20字节,再传50字节,连接的另一方将无法了解发方每次发送了多少字节。收方可以分4
次接收这80个字节,每次接收20字节。一端将字节流放到TCP连接上,同样的字节流将出现在TCP连接的另一端。
另外,TCP对字节流的内容不作任何解释。TCP不知道传输的数据字节流是二进制数据,还是ASCII字符、EBCDIC字符或者其他类型数据。对字节流的解释由TCP连接双方的应用层解释。
这种对字节流的处理方式与Unix操作系统对文件的处理方式很相似。Unix的内核对一个应用读或写的内容不作任何解释,而是交给应用程序处理。对Unix的内核来说,它无法区分一个二进制文件与一个文本文件。
TCP是因特网中的传输层协议,使用三次握手协议建立连接。当主动方发出SYN连接请求后,等待对方回答SYN,ACK。这种建立连接的方法可以防止产生错误的连接,TCP使用的流量控制协议是可变大小的滑动窗口协议。第一次握手:建立连接时,客户端发送SYN包(SEQ=x)到服务器,并进入SYN_SEND状态,等待服务器确认。第二次握手:服务器收到SYN包,必须确认客户的SYN(ACK=x+1),同时自己也送一个SYN包(SEQ=y),即SYN+ACK包,此时服务器进入SYN_RECV状态。第三次握手:客户端收到服务器的SYN+ACK包,向
服务器发送确认包ACK(ACK=y+1),此包发送完毕,客户端和服务器时入Established状态,完成三次握手。
IP 地址:网络和主机
IP 地址是一个 32 位数字,它唯一地标识 TCP/IP 网络上的主机(计算机或其他设备,如打印机或路由器)。
IP 地址通常以点分十进制格式表示,四个数字由句点分隔,例如 192.168.123.132。要了解子网掩码如何用于区分不同的主机、网络和子网,请查看以二进制表示的 IP 地址。例如,点分十进制 IP 地址 192.168.123.132 在二进制表示法中为 32 位数字11000000 01010001 11101110 000100。此数字的含义可能很难理解,因此它被分成四个部分,每个部分有八个二进制数字。这些八位部分称为八位组。示例IP 地址于是变成 11000000.10101000.01111011.10000100。此数字表示的含义只是稍微明白了一点,因此在大多数应用中,会将二进制地址转换为点分十进制格式 (192.168.123.132)。点分十进制数字是从二进制转换为十进制表示法的八位组。
为了让 TCP/IP 广域网 (WAN) 以一个网络集的形式高效工作,在网络间传递数据包的路由器并不知道信息包的目标主机的确切位置。路由器只知道主机是哪一个网络的成员,并使用存储在路由表中的信息来确定如何将数据包送达目标主机的网络。当数据包被传送到目标网络后,该数据包就会被传送到相应的主机。
为了让此过程顺利进行,IP 地址分为两个部分。IP 地址的前一部分作为网络地址,后一部分作为主机地址。以 192.168.123.132 为例,将它分为这两个部分之后,会得到: 192.168.123. 网络,.132 主机,- 或 - ,192.168.123.0 — 网络地址,0.0.0.132 — 主机地址。
子网掩码
第二项是子网掩码,它是TCP/IP正常工作所必需的。TCP/IP协议使用子网掩码确定主机是在本地子网中还是在远程网络中。
在TCP/IP中,将哪部分IP地址用作网络地址和主机地址并不固定,所以除非您掌握详细的信息,否则无法确定上述网络地址和主机地址。此信息在另一个32位数字中提供,称为子网掩
码。在本例中,子网掩码为 255.255.255.0。如果您不知道二进制表示法中的255等于11111111,可能并不清楚该数字表示的含义。照此分析,子网掩码为:11111111.11111111.11111111.0000000
将IP地址和子网掩码排列在一起比较,就可以分清该地址的网络部分和主机部分:
11000000.10101000.01111011.10000100 -- IP 地址 (192.168.123.132)
11111111.11111111.11111111.00000000 -- 子网掩码 (255.255.255.0)
前 24位(子网掩码中的数字1)被标识为网络地址,后8位(子网掩码中剩余的数字0)被标识为主机地址,据此可以得到:
11000000.10101000.01111011.00000000 -- 网络地址 (192.168.123.0)
00000000.00000000.00000000.10000100 -- 主机地址 (000.000.000.132)
这样,我们就可以知道,在这个使用 255.255.255.0 子网掩码的示例中,网络ID为192.168.123.0,主机地址为0.0.0.132。当数据包到达192.168.123.0子网(从本地子网或远
程网络),而且它的目标地址为192.168.123.132时,您的计算机将从网络接收它并对它进行处理。
几乎所有十进制子网掩码都转换为左侧全部是一、右侧全部是零的二进制数字。其他一些常见的子网掩码有:
十进制 二进制
255.255.255.192 1111111.11111111.1111111.11000000
255.255.255.224 1111111.11111111.1111111.11100000
Internet RFC 1878(从www.internic获取)描述了可在TCP/IP网络中使用的有效子网和子网掩码。
网络类
Internet 地址由管理Internet的机构InterNIC(www.internic) 来分配。这些IP地址分成若干类。其中最常见的是A、B和C类。也有D和E类,但是最终用户通常不会使用。每个
地址类都有不同的默认子网掩码。可以通过查看IP地址的第一个八位组来识别该IP地址的类别。下面是A、B和C类Internet 地址的范围,每一类地址都有一个示例:
A类网络使用的默认子网掩码为255.0.0.0,第一个八位组为 0-127。地址10.52.36.11就是一个A类地址。它的第一个八位组为10,介于1 至126之间(包括1和126)。
B类网络使用的默认子网掩码为255.255.0.0,第一个八位组为 128-191。地址 172.16.52.63 就是一个 B 类地址。它的第一个八位组为 172,介于 128 至 191 之间(包括 128 和 191)。
C 类网络使用的默认子网掩码为255.255.255.0,第一个八位组为192-223。地址192.168.123.132就是一个C类地址。它的第一个八位组192,介于192至223之间(包括192和223)。
在某些情况下,由于网络的物理拓扑或因为网络(或主机)的数目在默认的子网掩码限制之下并不适用,所以默认子网掩码值可能不适合机构的需要。下一部分将解释如何使用子网掩码划分网络。
子网配置
系统管理员可以进一步划分A、B或C类TCP/IP网络或对这些网络进行子网配置。当您将Internet的逻辑地址结构(IP地址和子网的抽象世界)与真实世界中使用的物理网络进行协调时,就有必要进行子网配置。接受IP地址块分配的系统管理员可以用轻松符合这些地址的方式管理未经组织的网络。例如,您有一个广域网,在该广域网中,TCP/IP路由器连接的三个网络(位于不同城市)中有150个主机。这三个网络中的每个网络都有50个主机。向您分配了C类网络192.168.123.0。(此地址是为了便于说明,实际上来自Internet中未分配的范围。)这意味着可以将地址192.168.123.1至192.168.123.254用于您的150个主机。在示例中不能使用的两个地址为192.168.123.0和192.168.123.255,因为主机部分全部为一和全部为零的二进制地址无效。零地址无效的原因是使用它在未指定主机的情况下指定了网络。255 地址(在二进制表示法中全部为一的主机地址)用来向网络中的每个主机广播消息。只需记住,任何网络或子网中的第一个地址和最后一个地址不能分配给任何单独主机。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论