北邮-TCP/IP

@北邮 北邮网院学习笔记。

起源

Internet起源于美国,美国军方的推动促成了TCP/IP协议的研究开发与推广应用。

Internet使用TCP/IP协议。TCP/IP协议是一种简洁但很实用的计算机协议。由于TCP/IP的通用性,使得Internet增长得如此迅速,变得如此庞大。

TCP/IP是为Internet开发的第一套协议,在网络互联中用得最为广泛,也是Internet的核心协议,它是一套工业标准协议集,主要是针对广域网而设计的,目的是使不同厂家生产的计算机能在共同网络环境下运行,是Internet中计算机之间通信所必须共同遵守的一种通信规定。

工作流

TCP/IP是两个协议,其中,IP协议负责数据的传输,TCP协议负责数据传输的可靠性。

首先由TCP协议把数据分成若干数据段,称为数据报,给每个数据报加上一个TCP信封(实际上是报头),上面写上数据报的编号,以便在接收端把数据还原成原来的格式。

IP协议把每个TCP信封再套上一个IP信封,在上面写上接收主机的地址。一旦准备好IP信封,就可以在物理网上传送数据了。IP协议还具有利用路由算法进行路由选择的功能。这些IP信封可以通过不同的传输途径(路由)进行传输。由于路径的不同,再加上其他的原因,可能出现顺序颠倒、数据丢失、数据失真甚至重复的现象。这些问题都由TCP协议来处理,它具有检查和处理错误的功能,必要时还可以请求发送端重发。

分层模型

TCP/IP分层模型也称为Internet分层模型或Internet参考模型,从下到上,包括4层:物理链路层、网络层(也叫IP层)、传输层(也叫运输层)、应用层。

传输层定义了两种协议:TCP(Transmission Control Protocol,传输控制协议)与UDP(User Datagram Protocol,用户数据报协议)。

TCP/UDP

TCP协议是一种可靠的面向连接的协议,主要功能是保证信息无差错地传输到目的主机。

UDP协议是一种不可靠的无连接协议,它与TCP协议不同的是它不进行分组顺序的检查和差错控制,而是把这些工作交给上一级应用层完成。

IP

Internet上主机之间的通信是靠Internet地址来定位的,连接在某个网络上的两台计算机之间在相互通信时,在它们所传送的数据包里都会含有某些附加信息,这些附加信息就是发送数据的计算机的地址和接收数据的计算机的地址。像这样,人们为了通信的方便给每一台计算机都事先分配一个类似我们日常生活中的电话号码一样的标识地址,该标识地址就是IP地址。根据TCP/IP协议规定,IP地址是由32位二进制数组成,而且在Internet范围内是唯一的。例如,某台连接在Internet上的计算机的IP地址为:11001010 11000100 01110000 10100110。

很明显,这些数字对于人来说不太好记忆。人们为了方便记忆,就将组成计算机的IP地址的32位二进制分成4段,每段8位,中间用小数点隔开,然后将每八位二进制转换成十进制数,这样上述计算机的IP地址就变成了202.196.112.166。

在Internet中,一台计算机可以有一个或多个IP地址,就像一个人可以有多个通信地址一样,但两台或多台计算机却不能共用一个IP地址。如果有两台计算机的IP地址相同,则会引起异常现象,无论哪台计算机都将无法正常通信,IP地址能唯一地确定Internet上每台计算机与每个用户的位置。

目前使用的Pv4(IP协议第4版本)32位地址格式提供的地址总数只有40多亿个。再加上Pv4的地址分配极不合理,让中国这样的国家全国的P地址总数往往还没有北美的一所大学或一个大公司多。IPv6(IP协议第6版本)作为Pv4的替代版本,其地址为128位二进制数。具有128位地址的Pv6提供的地址总数足以满足我们现在所想得出来的所有应用的需要,IPv6已成大势所趋。

Gateway(网关)

从一个房间走到另一个房间,必然要经过一扇门。同样,从一个网络向另一个网络发送信息,也必须经过一道“关口”,这道关口就是网关。因此,网关(gateway)就是一个网络连接到另一个网络的“关口”。只有设置好网关的IP地址,TCP/IP协议才能实现不同网络之间的相互通信。那么这个IP地址是哪台机器的IP地址呢?网关的IP地址是具有路由功能的设备的IP地址,具有路由功能的设备有路由器、启用了路由协议的服务器(实质上相当于一台路由器)、代理服务器(也相当于一台路由器)。这里,路由器实现数据包的选路、转发,Internet是网络的网络,可以说是由路由器将许多小的网络连接起来形成的世界范围的互联网络。

如果搞清了什么是网关,默认网关也就好理解了。就好像一个房间可以有多扇门一样,一台主机可以有多个网关。默认网关的意思是一台主机如果找不到可用的网关,就把数据包发给默认指定的网关,由这个网关来处理数据包。现在主机使用的网关,一般指的是默认网关。

一台计算机的默认网关是不可以随随便便指定的,必须正确地指定,否则一台计算机就会将数据包发给不是网关的计算机,从而无法与其他网络的计算机通信。

Subnet Mask(子网掩码)

一个大的物理网络可以划分成若干个逻辑子网络,通过子网划分,既可以有效避免地址浪费,同时减少了子网内地址的冲突情况。在Internet上有成千上百万台主机(host),每个主机都有一个IP地址。子网掩码的作用是用来区分网络上的主机是否在同一网络段内。子网掩码不能单独存在,它必须结合IP地址一起使用。子网掩码只有一个作用,就是将某个IP地址划分成网络地址和主机地址两部分。

Domain Name(域名)

在互联网上,每个站点都分配一个IP地址,如郑州大学网站地址202.196.64.4,但这些数字比较难记,所以发明了一种方法来代替这种数字,即“域名”地址,域名是层次化的,如www.zzu.edu.cn,其中cn代表中国(China),edu代表教育网(education),zzu代表郑州大学(Zhengzhou University),是在教育网上注册的域名,www代表提供www服务的主机名,合起来就代表中国教育网上的郑州大学站点。

域名地址和用数字表示的IP地址实际上是同一个东西,只是外表上不同而已,在访问一个站点的时候,用户可以输入这个站点用数字表示的IP地址,也可以输入它的域名地址。

这里就存在一个域名地址和对应的IP地址相转换的问题,这些信息实际上是存放在ISP中称为域名服务器(DNS)的计算机上,当输入一个域名地址时,域名服务器就会搜索其对应的IP地址,然后访问到该地址所表示的站点。在Internet上有各类站点地址的信息,站点地址可以通过搜索引擎查询。

Internet的域名系统是为方便解析机器的IP地址而设立的。域名系统采用层次结构,按地理域或机构域进行分层。书写中采用圆点将各个层次隔开,分成层次字段。在机器的地址表示中,从右到左依次为最高域名段、次高域名段等,最左的一个字段为主机名。例如,在水木清华bbs网站bbs.tsinghua.edu.cn中,最高域名为中国cn,次高域名为教育edu,最后一个域名为清华大学tsinghua,主机名为bbs。

猜你喜欢

转载自www.cnblogs.com/hawklee/p/10844268.html