TCPIP

TCP/IP模型

TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP协议簇分为四层,IP位于协议簇的第二层(对应OSI的第三层)TCP位于协议簇的第三层(对应OSI的第四层)

TCP/IP通讯协议采用了4层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。这4层分别为:应用层:应用程序间沟通的层,如简单电子邮件传输(SMTP)、文件传输协议(FTP)、网络远程访问协议(Telnet)等。传输层:在此层中,它提供了节点间的数据传送服务,如传输控制协议(TCP)、用户数据报协议(UDP)等,TCPUDP给数据包加入传输数据并把它传输到下一层中,这一层负责传送数据,并且确定数据已被送达并接收。互连网络层:负责提供基本的数据封包传送功能,让每一块数据包都能够到达目的主机(但不检查是否被正确接收),如网际协议(IP)。网络接口层:对实际的网络媒体的管理,定义如何使用实际网络(EthernetSerial Line)来传送数据。

TCP-IP CheatSheet

IP地址

地址类别

消息特征

除地址类别外,还可根据传输的消息特征将IP地址分为单播、广播或多播。主机使用IP地址进行一对一(单播、一对多(多播)或一对所有(广播)的通信。

单播

单播地址是IP网络中最常见的。包含单播目标地址的分组发送给特定主机,一个这样的例子是,IP地址为192.168.1.5(源地址)的主机向IP地址为192.168.1.200(目标地址)的服务器请求网页。要发送和接收单播分组,IP分组报头中必须有一个目标IP地址,而以太网帧报头中必须有相应的目标MAC地址。IP地址和MAC地址一起将数据传输到特定的目标主机。

如果目标IP地址属于另一个网络,则在帧中使用的目标MAC地址将为与源IP地址位于同一个网络中的路由器接口的MAC地址。

广播

广播分组的目标IP地址的主机部分全为1,这意味着本地网络(广播域)中的所有主机都将接收并查看该分组。诸如ARPDHCP等很多网络协议都使用广播。

例如:

C类网络192.168.1.0的默认子网掩码为255.255.255.0,其广播地址为192.168.1.255,其主机部分为十进制数255或二进制数11111111(全为1

B类网络172.16.0.0的默认子网掩码为255.255.0.0,其广播地址为172.16.255.255

A类网络10.0.0.0的默认子网掩码为255.0.0.0,其广播地址为10.255.255.255

在以太网帧中,必须包含与广播IP地址对应的广播MAC地址。在以太网中,广播MAC地址长48位,其十六进制表示为FF-FF-FF-FF-FF-FF

Multicast |多播

多播地址让源设备能够将分组发送给一组设备。属于多播组的设备将被分配一个多播组IP地址,多播地址范围为224.0.0.0 ~ 239.255.255.255。由于多播地址表示一组设备(有时被称为主机组,因此只能用作分组的目标地址。源地址总是为单播地址。

远程游戏就是一个使用多播地址的例子,很多玩家通过远程连接玩同一个游戏;另一例子是通过视频会议进行远程教学,其中很多学生连接到同一个教室。还有一个例子是硬盘映像应用程序,这种程序用于同时恢复众多硬盘的内容。

同单播地址和广播地址一样,多播IP地址也需要相应的多播MAC地址在本地网络中实际传送帧。多播MAC地址以十六进制值01-00-5E打头,余 下的6个十六进制位是根据IP多播组地址的最后23位转换得到的。

组播(IGMP协议)

224.0.0.0 ~ 224.0.0.255为预留的组播地址(永久组地址,地址224.0.0.0保留不做分配,其它地址供路由协议使用; 224.0.1.0 ~ 224.0.1.255是公用组播地址,可以用于Internet; 224.0.2.0 ~ 238.255.255.255为用户可用的组播地址(临时组地址,全网范围内有效; 239.0.0.0 ~ 239.255.255.255为本地管理组播地址,仅在特定的本地范围内有效。 要注意的是,一些标准软件已经使用了固定的组播IP地址,如Upnp使用了239.255.255.250OSPF使用了224.0.0.5等。 一般而言你使用临时组播地址就可以了。 组播MAC地址是针对组播IP地址经过转换而来的,算是一种虚拟的MAC地址;之所以出现这个,是因为TCP/IP层之下的链路层是基于MAC地址来传输数据的。组播因为既不是点对点的传输,又不是广播,所以需要一个特殊的MAC地址

24.0.0.0—224.2.255.255的绝大部分地址已被使用,建议使用时避开上述地址(详细使用情况请参阅RFC 1700224.0.0.0基础地址,保留,不能被任何群组使用
224.0.0.1全主机群组(all hosts group,指参加本IP组播的所有主机、路由器、网关(不是指整个互连网) 224.0.0.2本子网上的路由器(all routers on a LAN)224.0.0.4 DVMRP路由器(DVMRP Routers) 224.0.0.5本子网上的OSPF路由器(all OSPF routers on a LAN) 224.0.0.6本子网上被指定的OSPF路由器(all designated OSPF routers on a LAN)
224.0.1.1网络时间协议(Network Time Protocol,NTP)224.0.5.000-224.0.5.127蜂窝式数字信息包数据发送主机组(CDPD Groups) 224.1.0.0-224.1.255.255基于流的协议组播主机组(Stream Protocol Multicast Groups) 224.2.0.0-224.2.255.255多媒体会议呼叫(Multimedia Conference Calls)*注:DVMRPDistance vector multicast routing protocol的缩写