1、TCP/IP 应用基础1TCP/IP 应用基础 简介Internet 是众多网络间的互联网,即计算机网络互相连接组成的一个大的网络。现在,这个网络已经覆盖了全球。在其形成初期,每个网络都使用不同的方法来进行互联或传输数据,因而有必要采用一个通用的协议使这些网络可以互相通讯。TCP/IP(传输控制协议 /互联网协议)就是 Internet 上的通讯协议。 理解 TCP/IP在 Internet 最初建立时,各个终端通过不同的电话线同不同的主机相连接。在不同计算机之间进行互联的过程是很复杂的。图 1 阐明了不同的终端需要不同的协议来进行连接。图 1. 用于互联的不同的硬件和软件计算机商家用不同的硬
2、件和软件解决方式来在他们的系统之间进行互联,不久人们意识到需要采用简单的方法来对计算机进行互联。其目的是建立一种连接方法,可以支持不同传输方式上的不同种类的计算机。在 1973 年,Bob Kahn 和 Vincent Cerf 开始研究传输控制协议组。它就是传输控制协议/互联网协议,在 1978 年研制成功。很快 TCP/IP 成为 Internet 上的通讯协议。那么什么是 TCP/IP 呢?它是一组数据传输协议,其中 TCP 和 IP 本身就是不同的协议。在协议组中还有其他几种协议,每一个组件都有其不同的规则。TCP/IP 协议组包括:DOS WorkstationsApple Maci
3、ntosh UNIX WorkstationOS/2 workstationTCP/IP 应用基础2 传输控制协议(TCP) - - 实现主机间的可靠的连接。同时负责数据包按正确的顺序发送。如果数据丢失了,TCP 负责自动重新传输丢失的数据。 互联网协议(IP) - - 提供数据流服务。 UDP (用户数据流协议 ) - - 负责传输不同主机间任意的数据流。 ICMP (Internet 控制信息协议) - - 用于主机间携带不同的错误和状态信息。TCP/IP 指定了 Internet 上计算机的编址方式。并定义了数据在网络上通过不同的计算机或程序进行传输的方式。 图 2 描述了 TCP/IP
4、 中的各种服务和层的一个概念性的视图.图 2. TCP/IP 服务和层的一个概念性的视图 传输控制协议 (TCP)TCP 的目的是为采用不同传输方式的网络提供一种互联的方法。路由器用于给带有不同网络路由器地址的数据包打包。打包的过程可能会重复,数据包在到达最终目的地址前可能会被重复打包,并被发送到几个不同的路由器。图 3 描述了网络中路由器的作用。当路由器收到数据包信息时,它检查该目的地址,如果是属于本网络的,路由器将数据包送回客户。如果不是,它将数据包重定向到别的网络的路由器上。 IP packetIP ICMPTCP UDPFTP TELNETTTTTDNSLLLLLLSSSSSSSSNF
5、S PINGTCP/IP 应用基础3 路由器是用于对局域网或广域网进行互联的设备,其主要功能是控制网络交通。它的另一个功能是有多个可能的传输路径存在时,给数据包分配一个最合理的路径。 图 3.路由器的工作TCP 协议利用 sockets 接口提供了系统中一个双向的连接。一个 socket 是一个通讯连接的一端,定义了计算机的地址和在计算机上运行的通讯应用程序的端口号。例如,你的电话在你的房子中,你的房子有一个地址,而电话号码就象是一个特殊的端口,将你和一个特定的人连接。同样,一个 socket也是和计算机上的应用程序或进程相连接。 互联网协议(IP)IP 数据包是一个独立的信息包,由路由器通过
6、包中的地址信息传输。互联网协议是提供这种数据包服务的通讯协议。数据包可能通过不同的路径到达目的地。由于他们可能通过不同的路由器,他们可能不会按顺序到达,而在接收端这些数据包被重新排序。协同工作TCP 和 IP 协同工作,使得 Internet 服务可行。通过网络传输信息时,如果空间较大,可以将该信息分成较小的包。这些包在目的地重新组合形成原有的信息。例如,一般的信息包大小为 1500 字节,大多数发送的信息可能会大于 1500 字节。这样 TCP 将发送的信息分为信息包大小的块或数据流。每个信息包包括: 源地址和目的地址RouterRouterTCP/IP 应用基础4 包的大小 当一系列的数据
7、包组成较大的信息包时,插入数据包的位置信息IP 协议再来给这些信息包编址并将它们以可能最佳的路由路径发送到目的地址。在大多数情况下,在发送端主机和接收端的并没有直接相连。如果在它们之间有一个直接的连接,传输过程就会相当简单了,就象从孟买到纽约的直飞的航班一样。但是大多数情况下并非如此。毕竟,Internet 是网络之间的互联,信息在到达目的地前可能会有几次停留,其目的是寻求最佳的路径。这也意味着信息包可能通过不同的路径到达目的地,并在目的地被 TCP 重新组合。可能所有的信息包都不是通过同样的路径。在每一个停留点,信息包被发送前都要检查其目的地址。最后,数据包到达目的地。由于它们可能不是通过同
8、样的路径到达,可能也不会按顺序到达。IP 接收到数据包,并将它们交给 TCP 来处理。TCP检查数据包的完整性,并将它们重新组合,还原成原来的信息。图 4 描述了 TCP/IP 如何在 Internet 上发送数据包。图 4. 数据包压缩 理解 IP 编址机制前面已经提到过,信息包包含源地址和目的地址。毕竟,信息必须从某些地方发送过来,并且将发送到某些地方去。那么这些又是怎么实现的呢?每个 Internet 上的主机都有一个 IP 地址。IP 地址是 32 位长的二进制编码。编码由一句号分为 8 位长的部分,每个部分可以是 0-255 间的任何数。该号码是唯一的,并且确定了采用 TCP/IP
9、网络上的计算机或网络设备。IP 地址包含两个重要的标识符:网络 ID 和主机 ID。Internet Local network RouterRemote network RouterEncapsulated packetTCP/IP 应用基础5 网络 ID网络 ID 标识了计算机或网络设备所在的网络段。在同一个网络段中的所有的计算机有同样的网络 ID 号。在 IP 地址 168.148.25.55 中,网络 ID 号为168.148。在 IP 地址中网络 ID 的长度可变。 主机 ID 主机 ID 标识了特定的主机或网络设备。在同一网络段中的每个计算机有一个唯一的主机号。在 IP 地址 16
10、8.148.25.55 中,主机 ID 号为 25.55。1 子网掩码由于有一个网络 ID 和一个主机 ID,必须有一种技术来区分这两种 ID 号。子网掩码指定了 ID 地址中的哪一部分应看作网络 ID,哪一部分应看作主机ID。在同一个网络段中,所有计算机的子网掩码是一样的。子网掩码是一个 32 位长的二进制数,分成 4 个 8 位的部分。每部分由句号来分开。每部分的数值必须小与 256。如子网掩为 255.255.255.0,表示TCP/IP 应该将头 3 个数当作网络 ID 号,将最后一个数当作主机 ID 号。子网掩码的正确分配是很重要的,否则 TCP/IP 会将信息发送到错误的网络段中,
11、并且可能引发冲突。2 缺省网关 1地址缺省网关地址指定了本地网络段中路由器的 IP 地址。当计算机发现目的地址不是在本地子网内,它并不直接向目的计算机发送信息,而是将发送给远程子网的信息发送给缺省网关地址。本地网上的路由器由缺省网关地址指定,将信息发送给远程子网的计算机。如果缺省网关地址没有指定本地子网路由器地址,计算机不能和其他网络段的计算机通讯。当一个路由器用于连接两个不同的网络段时,它有两个网卡和两个 IP 地址。计算机 X 的缺省网关地址和计算机 X 本地路由器匹配,计算机 Y 的缺省网关地址和计算机 Y 的本地路由器匹配。见图 5 所示:1 注意这里“网关”一词与教科书中网络互联中所
12、述的“网关”内涵不同。TCP/IP 应用基础6图 5. 指定本地路由器 IP 地址种类尽管 IP 地址包含两个域,网络 ID 和主机 ID,其形式并不是完全一样的。这是因为网络段的大小可能不一样。Internet 认为不论什么原因,网络的大小不应该完全一样。在这种前提下,定义了五种地址种类来区分网络大小。这五类是 A,B,C,D,E。IP 地址中的用于定义网络的数目(网络 ID)和在网络中的主机数目(主机 ID)的位指定了地址种类。网络 ID 域中位数决定了可能的网络数目,而主机 ID 域中的位数决定了网络中主机最大数目。在这五类中,A,B,C 类网的定义是依赖于可能的网络数目和每个网络中最多
13、包含的主机数目。A 类网定义为较少的一些网络,每个网络包含很多的主机数目。C 类网定义为较多的一些网络,每个网络包含较少的主机数目。B 类网在 A,C 两类网中间。既,它适合适中数目的网络,每个网络包含中等数目的主机。子网 YIP 地址 129.75.6.1IP 地址 129.75.4.1Router计算机 Y IP 地址 129.75.4.31缺省网关地址 129.75.4.1子网 XIP 地址 129.75.6.122缺省网关地址 129.75.6.1计算机 XTCP/IP 应用基础7D 类网和上面三类就大不一样了,它用于多点传送组(选用多点传送来广播)。E 类网是试验性的地址,为将来作保
14、留,现在在普通应用中还没有用到。下表描述了对 A,B,C 三类 IP 地址的网络 ID 域和主机 ID 域类型 IP 地址 网络 ID 主机 IDA a.b.c.d A b.c.dB a.b.c.d a.b c.dC a.b.c.d a.b.c d你可以通过 IP 地址的二进制表示的开始位,或者十进制格式中第一个字节的范围来确定 IP 地址的种类。下表给出了如何识别这 3 类地址,以及每类IP 地址中最大的网络数目和主机数目。IP 地址种类 IP 地址格式 开始位 十进制范围 最大网络数 网络中最大主机数 目 A N.H.H.H 0 1-127 127 16,777,216B N.N.H.H
15、10 128 191 16, 384 65, 534C N.N.N.H 110 192 223 2,097,152 254这样 “ B 类“ 网地址 (137.150.*.*)可以包含 Internet 上的 65,534 台计算机. “ C 类“ 网地址 (192.150.188.*) 可以包含 Internet 上的 254 台计算机,如图 6 所示:图 6. C 类网地址可以将 254 台计算机连接到 Internet 上图 7 描述了计算机的 TCP/IP 属性窗口。计算机上的 IP 地址可以自动分配,也可以手工分配。C 类网地址254 计算机InternetTCP/IP 应用基础8图
16、 7. IP 地址3.4 域名服务(DNS)当两台计算机互相问候时,它们可能会这样:HI,168.148.25.55,这儿有从 192.160.13.1 给你的信息。用户发送信息时情况就不大一样了,记住名称会比较容易。例如,Microsoft 的地址是 75.152.207.123,但是其字母名称 比较好用。你可以通过名称或地址来指向特定的计算机,例如,你输入 同 75.152.207.123 是一样的。命名过程中唯一例外的是电子邮件(e-mail )系统。E-mail 地址仅仅采用系统名称而不是地址。想象一下 e-mail 地址象 william192.160.13.1 一样,而不是 。T
17、CP/IP 应用基础9网络上的每个计算机都用一个地址,用来发送和接收信息。但是这些地址是怎样产生的?如何处理这些地址呢?如同房间的地址是唯一的一样,每个主机都有一个唯一的地址。如果有重复的地址,就一定会发生冲突,由于TCP/IP 不能确定其发送的地址,我们使用域名服务(DNS)来管理 Internet系统名称。当你采用名称而不是数字时,Internet 和 TCP/IP 工具,如 telnet, FTP, and SMTP 访问 DNS 来确定你指定的地址,并将它们分解为网络地址。当 DNS接收到名称后,它将其翻译成数据地址,数据地址在插入到要传输的信息中。DNS 的一项重要的特征是它组成了一
18、个层次结构来保存地址信息。地址信息包存在层次中的几个不同的地方,而不是在一个中心点。每个位置都有管理本地节点信息的域名服务器。图 8 描述了 Internet 的层次结构。在层次中有一个最高层,又叫根。根被划分为几个域。图 8. Internet 的层次结构一些顶级的域:.com = 商业.org = 组织 (非盈利的或非商业的).edu = 教育组织.gov = 政府部门.net = 网络服务提供商.mil = 军事其目的是提供给用户一些它们正在连接或发送邮件的组织的信息。但是其缺点是现在 Internet 已经在世界范围内广泛使用了,这样.edu 不能指明该教育组织属于哪个国家。于是现在又
19、有国家域来指定主机的地理位置。地理位置显示在地址的最后:ROOTGOVEDU COMMIL NETTCP/IP 应用基础xqcheng 的邮箱是在西安交通大学的网络服务器上。每个组织都负责在各自的位置维护这些域名。这样的好处是不需要一个中心的维护文件将域名翻译成地址。例如,Have Fun Limited,在域名服务器上有一个地址。但 Have Fun Limited 必须自己维护其在 Internet 上的主机。如果有人从 More Fun limited 想要访问在 Have Fun Limited 上的某台计算机,它必须通过 Internet 来访问。在 Have Fun Limited
20、 中的那台计算机应该回答该请求并且给 more Fun Limited 中的计算机发送响应信息。如图 9 所示:图 9.通过 Internet 通讯对这种域名系统有一种管理方法,即 IP 地址不能随机分配。当一个组织希望将一台计算机连接到 Internet 上时,它必须从网络信息中心(NIC)获得一块地址。地址的数目根据该组织的需要。最小为“C 类” 地址,此时该组织可以连接 254 台计算机到 Internet。B 类地址地址块可能更多的地址数目。通过给组织分配的地址块,你可以方便地在组织中创建一个子组。例如,Have Fun Limited 可以在组织中创建下列子组,parties, picnics, travel,而不会有任何问题,其全名可能是: . 你需要知道的是在同一个域中不能有两个同名的计算机,并且也不能有两个同名的域。当你希望加入一个域时,必须通过管理该域的组织的认证。每个站点都必须指定包含 DNS 信息的域名服务器。该信息由网络上的其他计算机来查询。DNS 名称同主机域名的格式一样。如果组织比较大,和 Internet 连接要在 COM 域注册该站点。必须设置一台计算机来处理该组织中的用户的域名服务。这个系统连接和最近的 Internet访问区域相连接。 InternetHave Fun LimitedMore Fun Limited
Copyright © 2018-2021 Wenke99.com All rights reserved
工信部备案号:浙ICP备20026746号-2
公安局备案号:浙公网安备33038302330469号
本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。