第二章 TCP/IP 协 议 2.1 TCP/IP 参 考 模 2.2 IP 协 议 2.3 TCP 协 议
物理地址-IP地址-端口地址-用户名 第二章 TCP/IP 协 议 2.1 TCP/IP 参考模型 应用层 Telnet FTP SMTP 其它 UDP TCP 传输层 互联网层 IP(ICMP、ARP、RARP) Internet 无线分组网 LANs 网络接口层 物理地址-IP地址-端口地址-用户名
当1974年Cerf与Kahn在编定互联网信息交流规则 时,其目的只是限于让当时在ARPANET的电脑, TCP/IP协议: 当1974年Cerf与Kahn在编定互联网信息交流规则 时,其目的只是限于让当时在ARPANET的电脑, 能够有一个共同的交谈规则,以促使信息的有效交换 Vinton G. Cerf文顿˙瑟夫 Robert E. Kahn罗伯特˙卡恩
2009年8月,Vinton Cerf宣布NASA(美国太空总 署)的计划,即是把互联网联接上在太阳系里运行 的人造行星航天器 TCP/IP协议包括TCP、IP、UDP、ICMP、RIP、 SMTP、TELNET、FTP、ARP、TFTP等许多协议
IP(Internet Protocol)网络互联协议: 最早于1970年在UNIX系统平台上开发成功 提供网络路由、错误控制、网络分段等众多功能
TCP(Transmission Control Protocol)传输控制协议: 是一种面向连接的传输层协议 通过使用序列号和确认信息,TCP协议能够向发送方 提供到达接收方的数据包的传送信息。当传送过程中 出现数据包丢失情况时,TCP协议可以重新发送丢失 的数据包直到数据成功到达接收方或者出现网络超时
从***角度看 TCP/IP提供 用户 应用程序(电子邮件、文件传送、远程登录) 程序员 无连接报文分组递送服务、面向连接的可靠数据流传送服务 设计 寻址、路由选择、协议
2.2 IP协议 一. IP 分组格式 IP的基本服务:提供一个非可靠、尽力去完成任 务的、无连接的服务
IHL:IP包头长度,最小为5,最大为15,单位为32bit,常见是5 区分服务(8) 总长度(16b) 标识符(16b) 标志段(3b) 分组段偏移 (13b) 生存时间(8b) 协议(8b) 分组头检验和(16b) 源地址(32b) 目标地址(32b) 任选项(可变长) 填充段 版本号:常见是4 IHL:IP包头长度,最小为5,最大为15,单位为32bit,常见是5
【例题】:在IP数据报中,如果报头长度域的数值为5,那么该报头的长度为多少个8位组?( ) A.5 B.10 C.15 D.20
区分服务:PPPTTTT0,P是优先级,T是服务类型,常见是00000000,表示默认 总长度:数据包中所有信息,包括头部和数据,数据报最大长度为2^16-1=65535字节,实际使用的数据报长度很少有超过1500字节。IP标准规定所有的主机和路由器必须能够处理的IP数据报长度不得小于576字节 标识符:每一个独立数据包都在发送时给定了一个唯一的ID标识值,如果数据报必须分段,那么同一个ID号被放置在每一个分段中
标志段:0、DF、MF,DF(Don't Fragment)为1不分段,MF(More Fragment)为0是最后一段 分组段偏移:说明分段在当前数据报的什么位置,除了最后一个分段外,所有分段都要乘以8个字节,每个数据报最长是2^13=8192个分组,最大的数据报长度是8192*8=65536字节 生存时间:指明数据包剩下的寿命(定义为秒为单位,但实现为穿越的路由器的跳数),常见为32、64、128
协议:此数据报携带的数据是使用何种协议,以便使目的主机的IP层知道应该将数据部分上交给哪个处理过程。1-ICMP,2-IGMP,6-TCP,8-EGP,9-IGP,17-UDP,41-IPV6,89-OSPF 分组头校验和:只保护IP报头,而IP数据区的差错检测由传输层协议完成 源地址:32位 目标地址:32位 可选项:主要用于控制和测试,0-选项列表结束,3-松散源路由,4-时间戳,7-记录路由,9-严格源路由
您的计算机是靠什么访问其他计算机的?
二.IP 地址 Internet地址: 网络地址+主机地址+端口地址 IP地址:网络地址+(子网地址)+主机地址 IP地址长度为32位,点分十进制地址 采用x.x.x.x的格式来表示,每个x为8位,每个x 的值为0~255(例如 202.113.29.119)
IP地址的二进制表示: 用点分十进制表示 用二进制表示 用点分十进制表示 用二进制表示 129. 8.16.25 10000001 00001000 00010000 00011001 10 . 2. 0. 52 00001010 00000010 00000000 00110100 126. 0. 0. 0 01111110 00000000 00000000 00000000 192.255. 255. 255 11000000 11111111 11111111 11111111
1.IP地址的五种形式: 网络标识 7 主机标识 31 15 23 A类地址 1.0.0.0~127.255.255.255 10 网络标识 网络标识 7 主机标识 31 15 23 A类地址 1.0.0.0~127.255.255.255 10 网络标识 主机标识 B类地址 128.0.0.0~191.255.255.255 110 网络标识 主机标识 C类地址 192.0.0.0~223.255.255.255 1110 多投点地址 D类地址 224.0.0.0~239.255.255.255 11110 保留将来使用 E类地址 240.0.0.0~247.255.255.255
A类IP地址: A类IP地址的网络号长度为7位,主机号长度为24位 A类地址是从:1.0.0.0~127.255.255.255 网络号长度为7位,从理论上可以有27=128个网络 网络号为全0和全1(用十进制表示为0与127)的两 个地址保留用于特殊目的,实际允许有126个不同 的A类网络 由于主机号长度为24位,因此每个A类网络的主机 IP数理论上为224=16 777 216 主机IP为全0和全1的两个地址保留用于特殊目的, 实际允许连接16 777 214个主机 A类IP地址结构适用于有大量主机的大型网络
B类IP地址: B类IP地址的网络IP长度为14位,主机IP长度为16位 B类IP地址是从:128.0.0.0~191.255.255.255 由于网络IP长度为14位,因此允许有214=16384个不 同的B类网络,实际允许连接16382个网络 由于主机IP长度为16位,因此每个B类网络可以有 216=65536个主机或路由器,实际一个B类IP地址允 许连接65534个主机或路由器 B类IP地址适用于一些国际性大公司与政府机构等中 等大小的组织使用
C类IP地址: C类IP地址的网络号长度为21位,主机号长度为8位 C类IP地址是从:192.0.0.0~223.255.255.255 网络号长度为21位,因此允许有221=2097152个不同的 C类网络 主机号长度为8位,每个C类网络的主机地址数最多 为28=256个,实际允许连接254个主机或路由器 C类IP地址适用于一些小公司与普通的研究机构
D类IP地址: D类IP地址不标识网络 地址范围:224.0.0.0~239.255.255.255 用于其他特殊的用途,如多播地址Multicasting
E类IP地址: 暂时保留 地址范围:240.0.0.0~255.255.255.255 用于某些实验和将来使用
专门为局域网保留的IP地址: 10.0.0.0~10.255.255.255 172.16.0.0~172.31.255.255 192.168.0.0~192.168.255.255 专门为本机环路测试保留的IP地址: 127.0.0.0~127.255.255.255
主机或路由器向本网络上的某个特定的主机发送分组 网络号部分为全0,主机号为确定的值 这样的分组被限制在本网络内部 “这个网络上的特定主机”地址 : 主机或路由器向本网络上的某个特定的主机发送分组 网络号部分为全0,主机号为确定的值 这样的分组被限制在本网络内部 全 0 本机:如果主机试图在本网络内通信而又不知道本网网络号就可以用它 0…0 本网主机 主机
A类、B类与C类IP地址中主机号全1的地址为直接广播地址 直接广播地址: A类、B类与C类IP地址中主机号全1的地址为直接广播地址 用来使路由器将一个分组以广播方式发送给特定网络上的所有主机 只能作为分组中的目的地址 物理网络采用的是点-点传输方式,分组广播需要通过软件来实现 网络 向网络定向广播(直接广播地址) 全 1
网络号与主机号的32位全为1的地址为受限广播地址 用来将一个分组以广播方式发送给本网的所有主机 受限广播地址: 网络号与主机号的32位全为1的地址为受限广播地址 用来将一个分组以广播方式发送给本网的所有主机 分组将被本网的所有主机将接受该分组,路由器则阻挡该分组通过 全 1 局域网广播(受限广播地址)
回送地址是用于网络软件测试和本地进程间通信 TCP/IP协议规定: 含网络号为127的分组不能出现在任何网络上 回送地址: 回送地址是用于网络软件测试和本地进程间通信 TCP/IP协议规定: 含网络号为127的分组不能出现在任何网络上 主机和路由器不能为该地址广播任何寻址信息 127 回路:127.0.0.0用于本地机器上的测试和进程间通信; 127.0.0.1表示本地IP通用地址 随机(通常是1)
如何绑定IP地址 网卡地址: 它是一个48位地址、采用16进制编码: 08-00-5A-21-A7-22 分成了6个字节,前3个字节是IEEE分配给硬件厂商的,后3个字节是厂商赋予自己生产的网卡 它在世界内是唯一的 Cisco 00-00-0c Novell 00-00-1B、00-00-D8 3Com 00-20-AF、 00-60-8C IBM 08-00-5A 如何绑定IP地址
用户名: 计算机名:WINS服务器 邮件地址:邮件服务器 网址:DNS服务器、WEB服务器 FTP地址:FTP服务器 IP地址:DHCP服务器
子网掩码: 它是一个32位地址 用于屏蔽IP地址的一部分以区别网络标识(全“1”表示)和主机标识(全“0”表示),并说明IP地址是在局域网上,还是在远程网上 如:255.0.0.0、255.255.0.0、255.255.255.0
端口地址: 它是应用层与传输层之间的接口 分为:固定端口号0-1024、随机的端口号(如1433) 端口地址即TCP或UDP地址 TCP FTP:20、21 DNS: 53 TELNET:23 DHCP: 67、68 SMTP: 25 TFTP: 69 NTP: 123 HTTP: 80 SNMP: 161 POP: 101 NNTP: 119 HTTPS: 443
它是能够连接不同网络的软件和硬件的结合 产品 网关可以设在服务器、微机或大型机上 网关地址: 网关不能完全归为一种网络硬件 它是能够连接不同网络的软件和硬件的结合 产品 网关可以设在服务器、微机或大型机上 由于网关具有强大的功能并且大多数时候都和应用有关,它们比路由器的价格要贵一些 另外,由于网关的传输更复杂,它们传输数据的速度要比网桥或路由器低一些 因特网网关:允许并管理局域网和因特网间的接入 局域网网关:运行不同协议或运行于O S I 模型不同层上的 局域网网段间可以相互通信
【例题讲解】: D D B A C B 为了识别网络接口卡,网络接口卡都有自己的物理地址,其地址长度为( ) 为了识别网络接口卡,网络接口卡都有自己的物理地址,其地址长度为( ) A.8 B.16 C.32 D. 48 子网掩码的作用是划分子网,有关子网掩码的陈述错误的是( ) A.子网掩码是32位的 B.子网掩码中值为1的位标示该位是IP地址中网络地址部分的一位 C.每类IP地址有缺省子网掩码,如果用缺省子网掩码,则网络没使用子网 D.子网掩码只有255.0.0.0、255.255.0.0、255.255.255.0等几种 129.10.10.10属于( ) A.A类地址 B.B类地址 C.C类地址 D.D类地址 关于以太网网卡地址的说法正确的是( ) A.在世界范围内唯一 B.在世界范围内不唯一 C.在一定范围内唯一 D.在一定范围内不唯一 A类网络的子网掩码为255.252.0.0,则子网数目是( ) A.14个 B.30个 C.62个 D.126个 B类网络的子网掩码为255.255.252.0,则主机数目是( ) A.2046 B.1022 C.510 D.254 D D B A C B
2.NAT(Network Address Translator): 网络地址转换:基本思想是因特网上彼此通信的主机不需要全球唯一的IP地址。一个主机可以配置一个私有地址,它只要在一定的范围内唯一即可,例如公司内容唯一 属接入广域网(WAN)技术,是一种将私有(保留)地址转化为合法IP地址的转换技术,它被广泛应用于各种类型Internet接入方式和各种类型的网络中。原因很简单,NAT不仅完美地解决了lP地址不足的问题,而且还能够有效地避免来自网络外部的攻击,隐藏并保护网络内部的计算机
3.子网: 【问题】:假设某一单位有4个物理网络,但是它只申请了一个B类地址142.10.0.0,怎么办? 子网:将一个大的网络划分成几个较小的网络, 而每一个网络都有其自己的子网地址
子网与IP地址的三级层次结构:
划分为3个子网的结构 :
三级层次的IP地址是:网络号.子网号.主机号 第一级网络号定义了网点的位置 第二级子网号定义了物理子网 第三级主机号定义了主机和路由器到物理网络的连接 三级层次的IP地址,一个IP分组的路由选择的过程为三步:第一步转发给网点,第二步转发给物理子网,第三步转发给主机
掩码运算: 二进制的IP地址与掩码按位进行“与” 运算的过程
子网地址空间的划分 : 划分子网就是将一个大网分成几个较小的网络 A类、B类与C类IP地址都可以划分子网
【例题】:一个大型跨国公司的管理者从网络管理中心获得一个A类IP地址121.0.0.0;需要划分1000个子网 分析:该公司需要有1000个物理网络,加上主机号全0和全1的两种特殊地址,子网数量至少为1002;选择子网号的位长为10,可以用来分配的子网最多为1024,满足用户要求
【例题】:现有一个公司需要创建内部的网络,该公司包括工程技术部、市场部、财务部和办公室4个部门,每个部门约有20~30台计算机。试问: (1)若要将几个部门从网络上进行分开。如果分配该公司使用的地址为一个C类地址,网络地址为 192.168.161.0,如何划分网络,将几个部门分开? (2)确定各部门的网络地址和子网掩码,并写出分配给每个部门网络中的主机IP地址范围。
解答: (1)四个部门,所以要四个子网,由于子网号和主机号不允 许是全0或全1,所以子网号的比特数为3,即有23-2=6个 可以分配的子网,主机号的比特数为5,即每个子网最 多有25-2=30个可分配的IP地址. (2)子网掩码为255.255.255.224,分配的四个子网是: 子网192.168.161.32的主机IP范围为:192.168.161.33~62 子网192.168.161.64的主机IP范围为:192.168.161.65~94 子网192.168.161.96的主机IP范围为:192.168.161.97~126 子网192.168.161.128的主机IP范围为:192.168.161.129~158
【例题】:假设有两台主机,主机A的IP地址为208. 17. 16. 165,主机B的IP地址为208. 17. 16 (1)主机A能否和主机B直接通信? (2)主机B能否和IP地址为208.17.16.34的DNS服务器通信?如果不能,怎么解决?
解答: (1)将主机A和主机B的IP地址分别与子网掩码进行与操作,得到的子网地址都为208.17.16.160。因此主机A和主机B处在同一个子网中,可以直接通信 (2)主机B不能与DNS服务器通信原因在于默认网关被错误地设置为子网地址,不是有效的主机地址。只要将主机A与主机B的默认网关修改为202.17.16.161,就可以解决问题
如何根据主机的IP地址判断是否属于同一个子网 在划分子网的情况下,判断两台主机是不是在同一个子网中,看它们的网络号与子网地址是不是相同 【实例】:主机1的IP地址为156.26.27.71,主机2的IP地址为156.26.27.110,子网掩码为255.255.255.192,判断它们是不是在同一个子网上
主机1的IP地址与子网掩码做与运算: 主机2的IP地址与子网掩码做与运算:
【例题】: 如果借用一个C类IP地址的3位主机号部分划分子网,那么子网屏蔽码应该是( ) A. 255.255.255.192 B.255.255.255.224 C.255.255.255.240 D.255.255.255.248 因特网上某主机的IP地址为128.200.68.101,子网屏蔽码为 255.255.255.240。该连接的主机号为( ) A.255 B.240 C.101 D.5 如果一个IP地址为202.93.120.34的主机需要向202.94.120.0网络进行直接广播,那么,它使用的直接广播地址为( ) 如果IP地址为202.130.191.33,屏蔽码为255.255.255.0,那么网络地址是( ) 路由器收到一个IP数据包,其目标地址为202.31.17.4,与该地址匹配的 子网是( ) A.202.31.0.0/21 B.202.31.16.0/20 C.202.31.8.0/22 D.202.31.20.0/22 B D 202.94.120.255 202.130.191.0 B
4.VLSM(Variable Length Subnet Mask): 【问题】:某个单位有5个物理网络,但是申请了一个C类地址,这5个物理网络连接的主机数分别是60、60、60、30、30,怎么办? 变长子网掩码:不同子网使用的子网掩码长度是不同的
5.超网(supernetting): 【问题】:一个单位申请了4个C类地址,想组成一个子网,怎么办? 超网:将一个组织所属的几个C类网络合并成 为一个更大地址范围的逻辑网络
6.无类地址: 【问题】:B类地址在1992年已分配了近一半,眼看很快就将全部分配完毕;因特网主干网上的路由表中的项目数急剧增长(从几千个增长到几万个)。怎么办? 不再将IP地址分成A、B和C类地址,而是将整个IP地址空间划分为不同大小的地址块 任何一个单位都可以从ISP申请到适合自己需要的地址块
斜线记法:A.B.C.D/n 有类地址只是无类地址的一个特例,如255.0.0.0/8 无类地址也可以划分子网,但没必要构成超网 无分类域间路由选择CIDR(Classless Inter-Domain Routing)就是为了解决无类地址域间路由问题的
三.互联网络控制协议 1.互联网络控制信息协议ICMP: ICMP报文借助IP数据报传输,提供以下服务: 测试目的主机可达性和状态 报告不可到达的目的主机给源主机 数据报流量控制 路由器路由改变请求 检测循环或超长路由 报告错误数据报头 获取网络地址 获取子网掩码
2.发送ICMP信息的IP分组头: 地址 服务类型 生存时间 协议号
3.ICMP分组结构: ICMP分组:错误分组和查询分组 ICMP分组格式:
最常用的是“目的无法到达”和“回声”消息 A B 数据网 发数据给Z 到Z的数据 我不知道如何 到达Z? 用ICMP通知A 目的端无法到达 路由器用ICMP通知目的地不可达的示意图
用PING命令产生的回声及其应答示意图 A B B可以到 达吗? ICMP回声请求 可以, 我在这里 ICMP回声应答
4.地址分辨协议ARP: 它用来将IP地址翻译成物理网络地址 A C 我需要10.1.0.5 的MAC地址 这是我的MAC地址 B 我就是。 这是我的MAC地址 MAC = 0800.0020.2C0A B 10.1.0.1 10.1.0.5 10.1.0.2
5.逆向地址分辨协议RARP和BOOTP可选安全启动协议: C 我的IP地址 是什么? MAC: 0800.0020.2C0A IP = ??? 我听到广播了。 这是你的IP地址 MAC = 0800.0020.2C0A IP = 10.1.0.5 B RARP Server
6.域名、IP地址和物理地址的之间的协议: 域名 IP地址 物理地址 DNS ARP RARP BOOTP
7.Internet 的管理: Internet 的协调者: 国际互联网协会(Internet Society,ISOC):简介 NIC:注册服务、目录服务、客户咨询服务、对用户的教育和培训服务 CNNIC: 简介
域名系统: DNS:是Internet 上主机名称的管理系统,主要用途是把主机名和电子邮件地址映射为IP 地址 上海DNS服务器:202.96.209.5 202.96.209.133 202.96.199.133 顶层域分为:通用域、国家域和地区域 详解:查阅
以机构区分的最高域名原来有7个: com(商业机构)、net(网络服务机构) gov(政府机构)、mil(军事机构) org(非盈利性组织)、edu(教育部门) int(国际机构) 1997年又新增7个最高级标准域名: firm(企业和公司) store(商业企业) web(从事与WEB相关业务的实体) arts(从事文化娱乐的实体) REC(从事休闲娱乐业的实体) info(从事信息服务业的实体) nom(从事个人活动的个体、发布个人信息)
“.CC”: 原为国别顶级域,特指Cocos (Keeling) Islands岛国,但现在已被广泛应用为一般网域 .CC是新的全球性国际顶级域名,具有和.COM、.NET及.ORG完全一样的性质、功能和注册原则(权威说法是国家域,不是最高域) “CC”在国际范围内已经是“China Company”(中国公司)或“Commercial Company”(商业公司)的代名词, 含义明确、简单易记,目前,.CC域名资源丰富,商业潜力巨大 商家的炒作,如baidu.cc,sina.cc是打不开,.la(老挝人民共和国)和.tv(图瓦卢)也被炒作过
? 四.互联网的路由选择 【问题】:当某个节点发送的IP包到达另一个节点(主机/路由器)的IP层后,该节点的IP层将如何处理呢? 交给上层协议(主机) 丢弃并通知源节点(路由器/主机) 继续向其它节点转发(路由器) 路由器是根据什么原则进行转发的呢? 出口1 出口2 出口3 出口 N IP 包 ? 路由器
1.IP 路由选择规则: 直接路由通信:位于同一IP网上的两台计算机之间的通信,由下面的物理传输系统完成
间接路由通信:不位于同一IP网上的两台计算机之间的通信,由由路由器进行转发
2.路由选择协议: AS自治系统:由单个管理当局控制的一组网络和路由器
EGP外部网关协议:外部路由器用以通告可达性信息给其他自治系统的协议.主要特征: 支持一种友邻获得机制 路由器不断地测试它的EGP友邻是否响应 EGP友邻通过传递路由更新报文定期交换网络可达性信息 它不像一种路由协议而像一个可达性协议
BGP边界网关协议: 它是一种AS间的路由协议,用于Internet 着重检测路由的循环 在更新信息中仅传输主要的路径 BGP可看作是EGP的下一代产品
IGP内部网关协议:内部路由器用以在一个自治系统内部交换网络可达性和路由选择信息的任何算法 RIP路由选择信息协议: 实现了距离向量算法,并使用跨度计量标准:0~15 OSPF开放最短路径优先: 它是一个现代的链路状态协议(向整个世界通告你的邻居情况),每个路由器将它所连接的链路状态信息向其他路由器传播 IGRP协议:在设计距离度量值时考虑了链路的物理特征(如带宽、延迟、可靠性及负载),而且路由更新的时间间隔是90秒(RIP协议是30秒),并且它也具有易配置的特点,同时增加了其它一些功能
路由器配置实验 【实验要求】:按照下图的网络拓扑示意图,分别用 静态路由器配置、RIP配置、IGRP配 置,让PC1和PC2可以互相访问。
说明:路由器R1、R2和R3使用Cisco 2611,其和PC1和PC2的接口的IP地址分配如下表所示。 设备 端口 IP 掩码 默认网关 R1 S0 20.1.0.1 255.255.255.0 E0 10.0.0.2 R2 20.1.0.2 S1 30.1.0.1 R3 30.1.0.2 40.1.0.1 PC1 10.0.0.1 PC2 40.1.0.2
配置PC1计算机的IP地址、子网掩码和网关: C:> ipconfig /ip 10.0.0.1 255.255.255.0 C:>ipconfig /dg 10.0.0.2
配置路由器R1: Router>en Router#conf t Router(config)#hostname R1 R1(config)#int e0 R1(config-if)#ip address 10.0.0.2 255.255.255.0 R1(config-if)#no shut R1(config-if)#int s0 R1(config-if)#ip address 20.1.0.1 255.255.255.0 R1(config-if)#clock rate 64000 R1(config-if)#exit R1(config)#ip route 30.1.0.0 255.255.255.0 20.1.0.2 R1(config)#ip route 40.1.0.0 255.255.255.0 20.1.0.2 R1(config)#end R1#copy run start
查看路由器R1的路由表 R1#show ip route 查看PC1和PC2是否能访问: C:>ping 40.1.0.1
RIP协议配置路由: R1(config)#router rip R1(config-router)#network 10.0.0.0 R1(config-router)#network 20.1.0.0 R1(config-router)#end R1#copy run start IGRP协议配置路由: R2(config)#router igrp 1 R2(config-router)#network 20.1.0.0 R2(config-router)#network 30.1.0.0 R2(config-router)#end R2#copy run start
五.下一代网际协议IPv6(IPng) 【问题】:整个IPv4的地址空间2011年2月用完, 怎么办? 【解决】: 采用无分类编址CIDR,使IP地址的分配更加合理 采用网络地址转换NAT方法,可节省许多全球IP 地址 采用具有更大地址空间的新版本协议IPV6
IPv4协议存在的问题: 地址空间的局限性 缺乏对安全性的支持 IPv4网络中节点配置很复杂 缺乏对服务质量的支持 缺乏对移动性的支持 IPv4路由问题 及早开始过度到IPV6的好处是: 有更多的时间来规划平滑过渡 有更多的时间培养IPV6的专门人才 及早提供IPV6服务比较便宜
1.IPV6主要目标: 即使地址空间的分配利用率不高,也能支持上百亿台主机 减小路由选择表的长度 简化协议,使路由器处理分组更迅速 提供比现在的IP 更好的安全性 增加对服务类型,特别是实时数据的注意 通过定义范围来帮助多点播送的实现 让主机可以不改变其地址即可漫游 协议未来还可以发展 允许新旧协议共同存在若干年
2.IPv6这要特点: 地址扩大 简化固定报头 报头的扩展性 简单的管理 安全性增强 QOS能力 IPv6是Internet的新一代IP协议,它的主要特点包括: 地址长度为数128位,以支持大规模数量的网络节点; IPv6简化了报头,减少了路由器处理报头的时间,降低了报文通过因特网的延迟。 增强了选项和扩展功能,使IPv6具有更大的灵活性,具有更强的功能。 IPv6对服务质量QoS作了定义,IPv6报文可以标记数据所属的流类型,以便路由器或交换机进行相应的处理。 IPv6提供了比IPv4更好的安全性保证
3.IPv6报头格式: 表1 IPV6报头格式 表2 IPV4报头格式
4.IPv6地址: IPv6地址长度是128位,包括16个字节: 2001:da8:8007:44a:226:18ff:fe25:6720 IPv6地址有3种格式: 冒号16进制形式: 2001:da8:8007:208:0:0:0:171 压缩形式: 2001:da8:8007:208::171 混合形式: fe80::5efe:192.168.0.8 注意:fe80::5efe:192.168.0.8%2,百分号2,表 示接口2上的IP地址
冒号十六进制IPv6地址 用二进制格式表示128位的一个IPv6地址: 00100001110110100000000000000000 00000000000000000010111100111011 00000010101010100000000000001111 11111110000010001001110001011010 将128位的地址按每16位划分为8个位段: 0010000111011010 0000000000000000 0000000000000000 0000000000000000 0000001010101010 0000000000001111 1111111000001000 1001110001011010 将每个位段转换成十六进制数,并用冒号隔开: 21DA:0000:0000:0000:02AA:000F:FE08:9C5A
根据前导零压缩法可以进一步简化为: 21DA:0:0:0:2AA:F:FE08:9C5A 双冒号表示法(double colon): 如果几个连续位段的值都为0,那么这些0就可以简写为:: 前面的结果可以进一步简化为:21DA::2AA:F:FE08:9C5A 链路本地地址:FE80:0:0:0:0:FE:FE9A:4CA2可以简写为 FE80::FE:FE9A:4CA2 组播地址: FF02:0:0:0:0:0:0:2 可以简写为 FF02::2
IPv6地址表示时需要注意的几个问题 在使用零压缩法时,不能把一个位段内部的有效0也压缩掉 例如,不能将FF02:30:0:0:0:0:0:5简写为FF2:3::5 ::双冒号在一个地址中只能出现一次。 例如:地址0:0:0:2AA:12:0:0:0,不能把它表示为::2AA:12::
计算被压缩的二进制数0的个数 确定::之间代表了被压缩的多少位0,可以数一下地址中还有多少个位段,然后用8减去这个数,再将结果乘以16。 例如,在地址FF02:3::5中有3个位段(FF02、3和2),可以根据公式计算: (8-3)×16=80 则::之间表示有80位的0被压缩。
IPv6前缀(format prefix) IPv4子网掩码用来表示网络和子网地址的长度。例如,192.1.29.7/24表示子网掩码长度为24位,子网掩码为255.255.255.0 IPv6不支持子网掩码,它只支持前缀长度表示法 前缀是IPv6地址的一部分,用作IPv6路由或子网标识 前缀的表示方法与IPv4中的无类域间路由CIDR表示方法基本类似 IPv6前缀可以用“地址/前缀长度”来表示, 例如为21DA::D3:2:0/48、 21DA:D3:0:2F3B::/64
5.IPv4到IPv6的过渡: 双协议栈:在完全过渡到IPv6之前,使一部分主机和路由器装有两个协议,一个IPv4协议和一个IPv6协议 隧道技术:在IPv4区域中打通了一个IPv6隧道来传输IPv6数据分组(6-in-4隧道) NAT-PT(网络地址转换-协议转换):用于在内联网或因特网边缘对IPV4、IPV6地址和报文格式进行转换
双协议层和双协议栈的结构
IPv6通过IPv4网络隧道传输IPv6数据分组机制
隧道配置 路由器-路由器隧道结构
主机-路由器隧道结构
主机-主机隧道结构
6.IPv6的安装: Windows 2000、Windows XP: C:\ > ipv6 install (IPv6的安装) C:\ > ipv6 uninstall (IPv6的卸载) Windows 2003: C:\ > netsh netsh> interface netsh interface> ipv6 install
Windows Vista:自身附带安装IPv6的支持,一般只需要确认IPv6已经启用即可。具体方法为:打开“控制面板”中的“网络与共享中心”中的“网络连接”,在属性中查看TCP/IPv6选项是否开启 Windows 7、Windows 2008:IPv6都是预安装的,同样只需要检查一下网络连接的属性即可 Linux:内核版本需要在2.2.0以上,以RedLinux9 0系统为例,可以使用下面的命令来加载ipv6模块:[root@localhost net]#modprobe ipv6 如果已经成功安装了IPv6模块,可以通过检查一下/proc/net/if_inet6文件是否存在即可,例如: [root@localhost net]# more if_inet6
7.IPv6的查看: Windows :C:\ > ipconfig /all Linux:[root@localhost net]# ifconfig –a 对于Windows 2003及以后版本而言,如果IPv6工作不正常,可以考虑使用netsh命令来帮助用户解决关于IPv6的问题
8.IPv6的连通: Windows: C:\> ping 2001:da8:8007:1::3 Linux: [root@localhost net]# ping6 2001:da8:8007:1::3
9.IPv6的资源: http://www.ecust6.edu.cn 华东理工大学 http://www.tsinghua6.edu.cn/ 清华大学 http://ipv6.sjtu.edu.cn/ 上海交通大学 http://www.fudan6.edu.cn/ 复旦大学 http://ipv6.google.com/ Google http://www.ist-ipv6.org/ 欧洲IPv6研发项目 http://www.eurov6.com/ 欧洲IPv6联盟 http://www.ipv6forum.org 欧洲IPv6论坛
2.3 TCP协议 一.网络上通信进程的标识 进程标识的问题 在同一台主机上,不同进程可用进程号(Process ID)来标识;但在网络环境下,不能用进程号来唯一地标识主机上的通信进程。 网络上唯一标识一个进程需要用一个二元组: (主机IP地址,服务端口号) 多重协议的识别问题 不同协议如TCP/UDP的地址格式不同;端口分配相互独立;工作方式也不同(比如有面向连接与无连接的区别) 网络上两个进程之间进行通信需要用一个五元组来标识: (本地主机IP地址,本地服务端口号,协议,远程主机IP地址,远程服务端口号)
二.进程之间通信模型 网络的主要作用或功能是通信与资源共享。从中可以归纳出网络上进程间的相互作用模式为客户/ 服务器(Client/Server)模式,即客户向服务器主动发出服务请求,服务器等待接收服务请求,并根据自身的资源状态进行应答与服务。 客户/ 服务器模式的特点:非对称的、异步的
不同的OS关于socket的实现不完全相同 在因特网中,为了方便网络上进程之间使用TCP/IP协议进行通信,专门设计了一套编程接口—套接字(Socket)编程接口,所谓套接字(Socket),就是用于标识通信进程的(主机地址、端口号、使用协议)的一个组合ID,套接字编程接口包括以下主要API: 创建socket:socket( ) 指定本地地址:bind( ) 建立socket连接:connect( ) 接收连接请求:listen( ) 、accept( ) 发送数据:send( ) & sendto( ) 接收数据:recv( ) & recvfrom( ) 不同的OS关于socket的实现不完全相同
面向连接客户/服务器模型时序图
无连接客户/服务器模型时序图
四.UDP 1.它向应用程序提供了一种发送封装的原始IP数据报的方法,并且发送时无需建立连接。它在传输数据时省去包头,但不能提供数据包的重传,所以适合传输短的文件。它主要是在IP上再加上一个分组头 2.UDP头: UDP校验和 UDP长度 目的端口 源端口 32bits
TCP与UDP的区别 基于连接与无连接 对系统资源的要求(TCP较多,UDP少) UDP程序结构较简单 流模式与数据报模式 TCP保证数据正确性,UDP可能丢包 TCP保证数据顺序,UDP不保证