TCP/IP协议栈:
物理层、数据接口层、网络层、传输层、应用层或网络接口层、网络层、传输层、应用层

TCP/IP协议栈的核心协议:
1、TCP
2、UDP
3、ICMP
4、IGMP
5、ARP:映射IP→Ethernet
6、RARP:映射Ethernet→IP

TCP/IP layer
-----------------Ipv4
A类  : 8位network/24位host   Fisting octet :1~126    127.x.x.x本机回环地址
               (0xxxxxxx) (10.0.0.0~10.255.255.255  私有地址) 2的24方-2
B类  :16位network/16位host   Fisting octet :128~191   
               (10xxxxxx) (172.16.0.0~172.31.255.255  私有地址) 2的16方-2
C类  :24位network/8位host   Fisting octet :192~223    
               (110xxxxx) (192.0.0.0~192.255.255.255  私有地址) 2的8方-2
D类  :  Fisting octet :224~239  (1110xxxx)
E 类  :  保留
 
 
IP PDU Header

·    IHL: IP头部长度 0~15 代表行数,最大15x4=60byte
·    Service type: type of service(TOS),包括QoS,CoS;Qos最大划分了255个等级,一般用到6个等级
·    Packet Length:包头和数据的总长度
·    Identification:每个ip包都会有一个标识,主要用于超过链路MTU的ip包被分片后在接收端被重组时所用
·    Flag: 3位: 0/DF/MF Don’t Frag / More Frag MTU 1500byte,超过就分片 0/0/1 , 第二0个代表有分片,第三个1代表有更多分片;0/1/1 死亡之ping;
·    Frag.Offset: 分片偏移 , 也是用于重组IP包
·    Time to live: 0-255,ttl减少1,一般16跳足够了
·    Protocol:协议号 告诉IP上层用的是TCP(6)还是UDP(17)

DHCP:

1. Dhcp discover 封包 source:0.0.0.0 des:255.255.255.255 等待响应1s,再广播9s,第三次13s,第四次16s,宣告失败 (UDP 67)
2.DHCP offer 广播(不知道client地址)(UDP 68)
3.Client request message : 67
4.Acknowledgment : 68
企业系统的更多的是在windows下架设DHCP,我们讲到路由器基本配置后,演示在路由器上面配置DHCP
 
 
TCP/IP Transport Layer:
------------------------------------------------------------------------------------------
TCP具有下面几个特征
1) connection 面向连接(建立一条连接以交换数据)
2) numbering & sequencing 编号和排序
3) acknowledgement 确认机制
4) error-check 差错检测 (用校验和来检查)
5) retransmission 重传机制 (接收方可请求重传)
6) flow control 流量控制(缓冲区,确认,窗口大小)
7) full-duplex 全双工(TCP连接是一对虚电路,每方向上一条)
  UDP具有下面几个特征
1) 面向无连接
2) 相比可靠性机制,UDP有低的开销
3) 有限的错误检测
4) 尽力而为传输
5) 没有数据恢复机制(不重传机制)
 
TCP Header
 
 

Sequence number:数据编排号或重传编号
Acknowledgment number:应答号
Header length:取值范围:5-15(基数为4byte,默认0x101,代表tcp包头20字节,最大0x1111=60字节)
Resv: 总被设置为0
Urg:紧急位:当该位为1时,代表告知接收方紧急需要CPU处理的数据在urgent pointer的所示位置
ACK:确认位:同意建立,拆除TCP连接,确认收到tcp字段
PSH:push强制位:代表要求接收方须将接收到的字段尽快交由上层,应用层协议处理
RST:reset重置位:请求重新建立tcp连接
Syn:同步位
Fin;finish 完成位 :请求断开一个tcp连接
CWR: congestion window-size reducing 拥塞窗口降低
ECN:explicit congestion notification 显示拥塞通告
Windows size: 发送方允许的窗口尺寸
Urgent pointer;urg有效字段,指向第一个非紧急数据的起始位置

2、TCP/IP的更多相关文章

  1. http、TCP/IP协议与socket之间的区别

    http.TCP/IP协议与socket之间的区别     网络由下往上分为:  www.2cto.com   物理层--                       数据链路层-- 网络层--   ...

  2. 15、TCP/IP协议

    15.TCP/IP协议       几台孤立计算机系统组在一起形成网络,几个孤立网络连在一起形成一个网络的网络,即互连网.一个互连网就是一组通过相同协议族互连在一起的网络. 互联网的目的之一是在应用程 ...

  3. 网络通信 --> Socket、TCP/IP、HTTP、FTP及网络编程

    Socket.TCP/IP.HTTP.FTP及网络编程 聊聊Socket.TCP/IP.HTTP.FTP及网络编程

  4. OSI七层协议模型、TCP/IP四层模型和五层协议体系结构之间的关系

    一.OSI七层模型 OSI七层协议模型主要是:应用层(Application).表示层(Presentation).会话层(Session).传输层(Transport).网络层(Network).数 ...

  5. 二、tcp/ip基础知识

    一.TCP/IP的标准化 1.TCP/IP的含义 一般来说,TCP/IP是利用IP进行通信时所必须用到的协议群的统称. 具体点,IP或ICMP.TCP或UDP.TELENT或FTP.以及HTTP等都属 ...

  6. http、TCP/IP协议与socket之间的区别(转载)

    http.TCP/IP协议与socket之间的区别  https://www.cnblogs.com/iOS-mt/p/4264675.html http.TCP/IP协议与socket之间的区别   ...

  7. 计算机网络——OSI、TCP/IP协议族详解

    一.OSI七层协议体系结构域TCP/IP四层体系结构对比 ISO/OSI模型,即开放式通信系统互联参考模型(Open System Interconnection Reference Model),是 ...

  8. 简述OSI七层协议模型、TCP/IP四层模型和五层协议之间的关系

    一.OSI七层模型 OSI七层协议模型主要是:应用层(Application).表示层(Presentation).会话层(Session).传输层(Transport).网络层(Network).数 ...

  9. (转) HTTP & HTTPS网络协议重点总结(基于SSL/TLS的握手、TCP/IP协议基础、加密学)

    HTTP & HTTPS网络协议重点总结(基于SSL/TLS的握手.TCP/IP协议基础.加密学) 原文:http://blog.csdn.net/itermeng/article/detai ...

  10. 套接字、UDP通信、TCP通信、TCP/IP协议簇

    一.套接字(socket) 1.英语单词socket:n.插座:穴:v.插入插座 2.套接字就是源IP地址和目的IP地址.源端口号和目的端口号的组合,是通过传输层进行通信的.IP指定电脑,端口指定某一 ...

随机推荐

  1. 洛谷P1220 关路灯 题解 区间DP

    题目链接:https://www.luogu.com.cn/problem/P1220 本题涉及算法:区间DP. 我们一开始要做一些初始化操作,令: \(p[i]\) 表示第i个路灯的位置: \(w[ ...

  2. Python 处理Excel内的数据(案例介绍*2)

    (一)案例一介绍 现在有一匹电商产品跟当日销量的数据,如下,总共有上万笔的数据,现在需要统计每个品牌当日的销售量,比如美宝莲今天总共卖出了多少的商品,另外需要统计每个品牌下面的每个子品类当日销售量(品 ...

  3. 前端Tips#3 - 简写的 border-radius 100% 和 50% 是等效的

    本文同步自 JSCON简时空 - 技术博客,点击阅读 视频讲解 视频地址 文字讲解 1.先讲结论 border-radius 这个 css 属性大家应该使用得非常娴熟,现实中用到的场景基本都是四个圆角 ...

  4. placeHolder和defaultValue的区别

    placeHolder和defaultValue的区别 (1)placeHolder用于提示用户,它不与后端进行交互. (2)defaultValue则是与后端交互时的默认值. 举例说明:在Selec ...

  5. C语言关键字const作用及其应用

    只要学过C语言的,都有知道const这个关键字,知道是用来定义常量的,如果一个变量被const修饰,那么它的值就不能再被改变,那么还有什么其他作用呢? 一.const常用作用 1.修饰局部变量 con ...

  6. 每日一问2:堆(heap)和栈(stack)的区别

    因为这里没有明确指出堆是指数据结构还是存储方式,所以两个尝试都回答一下. 一.堆和栈作为数据结构 1.堆(heap),也叫做优先队列(priority queue),队列中允许的操作是先进先出(FIF ...

  7. file_get_contents函数获取不到数据的一种情况

    问题:  file_get_contents($url) 获取不到数据,尽管URL地址正确,函数使用正确.如下代码 $url = "https://www.baidu.com"; ...

  8. Scala实践1

    一.Scala安装和配置 1.1安装 Scala需要Java运行时库,安装Scala需要首先安装jdk. 然后在Scala官网下载 程序安装包 根据不同的操作系统选择不同的安装包,下载完成后,将安装包 ...

  9. css样式及类型集合

    图片不清楚的,可以尝试点击图片鼠标右键选择:在新标签页中打开 放大

  10. dp-最长回文串

    博客 : http://blog.csdn.net/hao_zong_yin/article/details/72730732 问题描述: 求一个序列中的最长回文串,这个串可以不连续 , 如  { 1 ...