ARP, Fragmentation and Reassembly
Address Resolution Protocol
- IP addresses are said to be logical, because they are defined in terms of logical topology of the routers and end systems.
- The logical IP addresses need to be converted into specific physical addresses that identify the physical endpoints for the Ethernet sender and receiver
- ARP: conversion between IP address and Physical address
Address Resolution Protocol (ARP)
- How to map an IP address to a physical address? How to speed up? How fresh?
- How to map:First, broadcast. Second, specific host reply.
- How to speed up:cache the mac address
Fragmentation(分裂) and Reassembly
- Each physical network imposes(强加) a certain packet size limitation on the packet to be carried, called maximum transmission unit MTU.
- Router will devide packet into smaller pakcet according to the MTU.
RE: IP Packet Header
- Identification, Flags, and Fragment Offset: used for fragmentation and reassembly
- Identification is used to identify which packet a particular fragment belongs to.
- Flag:contain tree
- unsed bit:
- don't fragment is set to one :it will force the router not to fragment the pakcet.
- more fragment is set to one:tell the estination host that there are more fragments to follow.
- The Fragment Offset field identidies the location of a fragment in the packet.
- Fragment offset(分段偏移) is 13 bits; total length is 16 bits, what does it imply?
Example: Fragmenting a Packet
- Packet is to be forwarded to a network with MTU of 576 bytes. The packet has an IP header of 20 bytes and a data part of 1484 bytes.
- Maximum data length per fragment = 576 - 20 = 556 bytes.
Set maximum data length to 552 bytes to get multiple of 8.
All the value except the header checksum are the same as in original packet.
ARP, Fragmentation and Reassembly的更多相关文章
- TCP/IP Protocol Architecture
原文: https://technet.microsoft.com/en-sg/library/cc958821.aspx 1. 主机到网络层 2.网络互连层(互连这个翻译好) ----------- ...
- RAC的QA
RAC: Frequently Asked Questions [ID 220970.1] 修改时间 13-JAN-2011 类型 FAQ 状态 PUBLISHED Appli ...
- [dpdk] 读开发指南(2)(内容长期整理中)
接续前节. 7 PMD (Poll Mode Driver) A Poll Mode Driver (PMD) consists of APIs, provided through the BSD d ...
- unix network programming(3rd)Vol.1 [第2~5章]《读书笔记系列》
13~22章 重要 第2章 传输层: TCP/ UDP / STCP (Stream Control Transmission Protocol) TCP 可靠,有重传机制,SYN队列号 UDP 不可 ...
- Transport layer and Network layer
http://stackoverflow.com/questions/13333794/networking-difference-between-transport-layer-and-networ ...
- RFC2544测试指标
RFC2544测试指标 参考:https://wenku.baidu.com/view/3abbb5bf960590c69ec3769d.html RFC2544性能测试介绍 参考:https:// ...
- LwIP Application Developers Manual10---LwIP IPv4/IPv6 stacks
1.前言 lwIP正在加入IPv6,一个实验性的版本可以通过git下载,该版本实现了一个IPv4/IPv6的双协议栈.通过在lwipopts.h定义LWIP_IPV6可以使能IPv6 2.已实现的IP ...
- RFC-TCP
RFC: 793 TRANSMISSION CONTROL PROTOCOL DARPA INTERNET PROGRAM PROTOCOL SPECIFICATION September 1981 ...
- Optimizing Oracle RAC
Oracle Real Application Clusters (RAC) databases form an increasing proportion of Oracle database sy ...
随机推荐
- centos7安装java开发环境
一. 安装jdk 1.进入oracle官网下载jdk-8u152-linux-x64.tar.gz,用WinScp将文件上传到/usr/local文件下 2.解压:执行命令 tar –xzvf jdk ...
- Linux下mongodb
Linux下mongodb安装: 新建mongodb文件夹 下载安装包 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3. ...
- UNIX/Linux系统管理技术手册(3)----bash 数组和算术运算
复杂的数据结构和计算不是 bash 的特长.但它的确至少提供了数组和算术运算. 1.算术运算 所有的 bash 变量的值都是字符串,所以 bash 在赋值的时候并不区分数字 1 和 字符串 " ...
- Springboot基础知识
1.@RestController注解 Spring4之后新加入的注解,@RestController是@ResponseBody和@Controller的组合注解.(返回json需要@Respons ...
- 【Python】面向对象编程思想
概念 "笔"作为一个抽象的概念,可以被看成是一个类.而一支实实在在的笔,则是"笔"这种类型的对象. 一个类可以有属于它的函数,这种函数被称为类的"方法 ...
- Tomcat启动报错java.net.AbstractPlainSocketImpl(java/net/AbstractPlainSocketImpl.java:178:-1)Struts在网络复杂情况下启动报错解决办法
SSH项目 在网络复杂的情况(具体规律未知)下,Tomcat启动时,报如下错误: [ERROR] 2014-08-12 14:52:58,484 [org.apache.struts2.dispatc ...
- QML Delegate中访问该持有者的方式 附加属性(转载)
http://blog.csdn.net/yuxiaohen/article/details/17226971 用法很奇葩记录一下,实测可以,用于弱化delegate与持有者的依赖 delegat ...
- 求n的元素的最大最小值
public static int[] maxMin(int a[]) { int[] res = new int[2]; int len = a.length; if (len <= 0) { ...
- .net通过代码发送邮件
关键代码: 需要引用命名空间: using System.Net.Mail;using System.Net; MailMessage mailObj = new MailMessage(); mai ...
- windows线程时间打印
https://blog.csdn.net/xingcen/article/details/70084029