第二章 IP协议.ppt_第1页
第二章 IP协议.ppt_第2页
第二章 IP协议.ppt_第3页
第二章 IP协议.ppt_第4页
第二章 IP协议.ppt_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 IP协议 4学时 2 TCP IP协议栈 P12 Figure2 2 3 封装 4 分用 5 IP协议数据的传输过程 准备好数据 指明目的地 交给IP协议IP协议将数据组成IP数据包并发送到网络设备 由通信网络将数据包传送到正确的目的地在接收方 网络设备接收到IP数据包后会根据其目的地址将数据包发送给主机系统与信件递送的区别 1随时待命 来了即服务2传输中只有分解 没有合成 只有在目的地才组装 6 IP协议中的概念 工作 处理 的对象是数据包责任是将数据正确传递到目的地无连接的数据传递服务Connectionless eachdatagramisindependentofallothers 在传输中 课本上也有描述 IP协议在处理数据包时 处理可能是不同的 不可靠的数据传递服务Unreliable thereisnoguaranteethatdatagramsaredeliveredcorrectlyoratall 7 InternetProtocol IPisthenetworklayer对上层 提供主机到主机的分组递送服务对下层 在不同的数据链路协议间进行翻译课本提到了 IP协议要将数据正确传递到目的地 就必须能够标识和识别出数据包的地址 那么 处于网络层的IP 它的地址有什么要求呢 课本的描述 它是一个32位的整数 包含网络ID netid 和主机ID hostid 8 IPAddresses IPaddressesarenotthesameastheunderlyingdata link MAC addresses Why IP是网络层的协议 它必须能够为处于不同类型网络中的主机提供通信 不同的数据链路协议 该地址必须包含接收者所在的网络信息 这样才使路由变为可行 9 IPAddresses IPaddressesarelogicaladdresses notphysical 32bits整形数 IncludesanetworkIDandahostID EveryhostmusthaveauniqueIPaddress IPaddressesareassignedbyacentralauthority InternetCorporationforAssignedNamesandNumbers ICANN 指合法的IP地址 私网中的地址不在此列 10 五类IP地址 P16 Figure3 2组成 地址类别标识 网络ID 主机ID网络ID由全球的权威组织分配给某组织使用主机ID由本地的系统管理员分配网络ID和主机ID都用于路由 网络ID定位主机所属的网络 主机ID在该网络中定位主机 路由器仅使用netid 以缩小路由表的规模 Addressing的原则 即先定位网络 再定位主机 11 IP地址的表示 32位整形数不方便阅读与记忆4个由点隔开的十进制整数例子 P17一个网络接口对应着一个IP地址 主机有多个网络接口的话 就要分配多个IP地址 12 特殊IP地址 P17 Figure3 3囊括了教材3 2 1节最后部分hostid特殊地址的介绍 13 IP地址的缺陷 P18 首先 其次 再次为什么主机从一个位置移到另一个位置时 它原有的IP地址变得无法使用 课本P16 网络设备先根据IP地址中的netid找到该IP地址所属的网络 然后由该网络中的设备根据hostid将数据包转发给它 14 子网技术 私有网络地址 P196位可表示64个独立的主机地址 其中全0的地址被保留标志子网本身 全1的地址被保留用作广播 这样还剩62个可用的地址VLSM 可变长子网掩码一个物理网络中可能存在多个子网超网技术 大家自己可后看一下就行了 注意纠正错误 P19倒数第一行 私有网络地址 专门标识内部网络的 15 网络字节序和主机字节序 计算机中最基本的数据长度单位是字节 8位 整数必须使用多个字节来表示Littleindian 整数中的低位存在低内存地址Bigindian 整数中的低位存在高内存地址 16 IP数据包P258 P21 Figure3 5typedefstructip hdr 定义IP首部 unsignedcharip verlen 4位首部长度 4位IP版本号 unsignedcharip hlen 4 forwindowsOS unsignedcharip ver 4 unsignedcharip tos 8位服务类型TOSunsignedshortip totallen 16位总长度 字节 unsignedshortip id 16位标识unsignedshortip fragoff 3位标志位 13位分片偏移unsignedcharip ttl 8位生存时间TTLunsignedcharip protocol 8位协议 TCP UDP或其他 unsignedshortip checksum 16位IP首部校验和unsignedintip srcaddr 32位源IP地址unsignedintip destaddr 32位目的IP地址 IPV4 HDR defineIP HLEN pip pip ip verlen 0 xf 2 unit 32bits 4byes赋值操作 p262 L152 defineIP DF0 x4000 0 x4000don tfragmentflag defineIP MF0 x2000 0 x2000morefragmentflag defineIP FRAGOFF0 x1fff 0 x1fffmaskforfragmentingbits 17 校验和的计算 通过spynetsniffer抓包软件 抓取一个ip数据包进行分析研究4500002e 4表示ip版本号为ip第4版 5表示首部长度为5个32bit字长 即为20字节 002e表示ip总长度为46字节 其中ip数据部分为26字节 be550000 be55表示标识符 0000表示3bit标志及13bit片偏移量 7a1151ac 7a表示ttl值为122 11表示协议号为17的udp协议 51ac表示16bit首部检验和值 deb77ee3 表示32bit源ip地址为222 183 126 227c0a8127a 表示32bit目的ip地址为192 168 18 122反码求和 全部取反 累加 原码求和结果 3ae50 18 校验和的函数P263略 USHORTchecksum USHORT buffer intsize size的单位为字节 unsignedlongcksum 0 while size 1 cksum buffer size sizeof USHORT if size cksum UCHAR buffer cksum cksum 16 cksum 二进制反码求和 等价于 二进制求和再取反 anyoverflowsfromthemostsignificantbitsareaddedintotheleastsignificantbits 19 校验和的数学特性 CommutativeandAssociative A B C D A B C 0 0 D ByteOrderIndependencetheresultissame exceptthebytesareswappedinthesum在函数中 对于总长为奇数的情况 使用网络字节序来计算 ParallelSummationWhenthesumhasbeencomputed we fold thelongsuminto16bitsbyaddingthe16 bitsegments 20 加速校验和计算的技术 DeferredCarries 延缓进位 用32位的数来计算和 不用16位 这个每次加法都需要检查是否溢出 CombinewithDataCopyingOnsomemachines especiallyrelativelyslowandsimplemicro computers overheadcanbesignificantlyreducedbycombiningmemory to memorycopyandthechecksumming fetchingthedataonlyonceforbothIncrementalUpdate 路由器重新计算TTL giventheoriginalvaluem thenewvaluem andtheoldchecksumC thenewchecksumC is C C m m C m m 21 校验和的检查 RFC1071 重新计算校验和 含checksum字段 若全为1 0 xffff 则成功若是如教材所言比较二者相等 需要先把checksum字段的值保存出来 然后赋值0 再计算 最后再比较 结论 计算机累死了 22 IP数据包的分片和重组 IP数据包的传输最终还是要依赖底层物理网络的传输功能的 物理网络有最大传输单元的限制 而IP协议的目的是向上层屏蔽各物理网络的差异 所以不能将此限制加给上层协议为了解决长度限制的问题 需要对数据包进行分片和重组分片在源主机和路由器上发生 重组只能在目标主机发生 课本P23页的例子 23 数据包分片图解 每个分片都有IP数据包报头报头域最初的数据包的标记本分片的位置 24 分片算法的要点 INPUT ip hdr pipMaxdlen NI MTU IP HLEN pip dealwiththelastone 25 分片算法的作业 模拟IP的分片 自己生成一块待发送的数据 长度为300字节 最好是一个字符串假设网络的MTU 150字节发送的模拟用写入文本文件来代替 头部的数据用16进制表示 写完一个IP数据之后再换行 一行对应一个IP数据 用制表符 t 对齐 26 重组的要点 RFC815 IPDATAGRAMREASSEMBLYALGORITHMS缓冲区链表的操作将新到的分片加入 查找定位 溢出时的丢弃数据报完整的判断将报文重组缓冲区链表的定时维护管理 27 IP选项的处理 课后自己阅读程序实现的要点UCHAR cp UCHAR pip 1 intcnt IP HLEN pip sizeof IPV4 HDR 选项总长for cnt 0 cnt optlen cp optlen optlen 各选项长度 28 补充 IP软件设计思想 4 统一的输入队列以及统一的路由选择过程不区分数据报来自网络还是本机产生的 IP不需要在程序的代码中对本地生成的数据报区别 使用单一的路由算法为所有的数据报选择路由 便于人们理解一个数据报采纳的路由 独立的IP进程使软件容易理解和修改IP软件能够不依赖硬件中断或被应用调用的那些过程本地主机接口为本地传送创建一个伪网络接口 避免将发往本机的情况作特例对待 本地伪网络接口接收到数据报时 它利用PTOTO字段决定由本机上的哪个协议软件来接收该报文这样 IP视所有的选择路由的过程为统一且对称

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论