图解TCP/IP笔记(1)——TCP/IP协议群
转载请注明:https://www.cnblogs.com/igoslly/p/9167916.html

TCP/IP制定
制定:IETF
记录:RFC - Request for comment
协议规范内容,协议实现和运用信息,实验方面信息
RFC文档通过编号组织每个协议的标准化请求
STD记载哪个编号记载哪个协议
TCP/IP与OSI参考模型

数据包首部

发送数据包

应用程序处理
编码处理,建立TCP连接
TCP模块处理
根据会话层的指示,在应用层发来的数据附加TCP首部。
IP模块处理
添加IP首部,参考路由控制表决定接受此IP包的路由或主机,发送给连接这些路由器或主机网络接口的驱动程序,真正发送数据。
网络接口(以太网驱动)处理
附加以太网首部,通过物理层传输给接收端。发送处理中的FCS由硬件计算,添加到包最后,判断数据包是否损坏。
每个包至少会包含两个信息:发送端和接收端地址、上一层协议类型
TCP首部:源端口号、目标端口号、序号校验和。
IP首部:接收端IP地址、发送端IP地址。
以太网首部:接收端MAC地址、发送端MAC地址、标志以太网类型。
接收数据包
- 首先从以太网的包首部判断是否是自己的MAC地址,传给相关子程序(IP/ARP)
- 对于有路由控制器,接收端地址往往不同,需要借助路由控制表,调查应该送达的主机或路由器再转发数据。
- TCP模块时计算一下检验和检查数据,检查是否按序接收数据、端口号,确定具体应用程序
- 接收端发送“确认回执”给发送端,若发送端未接受则会一直反复发送
- 数据完整接收后,发送给端口号识别应用程序
网络接口层(数据链路层)
利用以太网中的数据链路层进行通信,属于接口层。当做让NIC起作用的驱动程序。
互联网层(网络层)
互联网层使用IP协议,相当于OSI模型中的网络层,基于IP地址转发分包数据
IP
IP是跨越网络传送数据包,使整个互联网都能收到的数据的协议。
属于非可靠性传输协议,分组交换,不重发
ICMP
IP数据包在发送途中一旦发生异常无法到达时,需要发回一个发生异常的通知。
可以诊断网络的健康状况。
ARP
从分组数据包的IP地址中解析出MAC地址的协议
ARPA
从分组数据包的MAC地址中解析IP地址的协议
传输层
让应用程序之间实现通信,分清哪个程序正在通信,是使用识别端口号
TCP
面向有连接,保证两段通信主机之间的通信
可以处理丢包、乱序、利用带宽、缓解网络拥堵
三次握手,四次握手,造成网络流量的浪费
UDP
面向无连接,不重发
应用层
WWW
浏览器与服务端之间通信所用的协议是HTTP,传输格式是HTML
WWW中HTTP属于OSI应用层协议,HTML表示层协议
电子邮件
发送电子邮件使用SMTP - simple mail transfer protocal
接收电子邮件使用POP3
电子邮件格式由MIME协议扩展后,发送声音、图像格式。
文件传输FTP-file transfer protocol
互连计算机之间可以相互发送、接收文件
进行文件传输时建立两个TCP连接,分别是发出传输请求和实际传输连接时
远程登录TELNET
登录到远程计算机上,
网络管理 SNMP-simple network management protocol
可以对连网的设备进行远程修改配置,检查是否正常运行
通过SNMP管理器管理SNMP代理(服务器,PC机,WS,路由器,交换机等)
SNMP代理端保存着网络接口,通信数据量,异常数据量等信息,通过MIB - management information base访问
对于大网络,SNMP可以让管理员及时检查网络拥堵情况
图解TCP/IP笔记(1)——TCP/IP协议群的更多相关文章
- TCP/IP笔记(二)TCP/IP简介
上回,主要介绍了下协议和OSI参考模型,并简单了解下网络构成要素,这回该说说TCP/IP了 互联网与TCP/IP的关系 互联网进行通信时,需要相应的网络协议,TCP/IP原本就是为使用互联网而开发 ...
- TCP/IP笔记(七)TCP详解
TCP的特点及其目的 为了通过数据包实现可靠性传输,需要考虑很多事情,例如数据的破坏.丢包.重复记忆分片顺序混乱等问题.如不能解决这些问题,也就无从谈起可靠传输. TCP通过检验和.序列号.确认应答. ...
- TCP/IP 笔记 1.3 IP:网际协议
---恢复内容开始--- I P是T C P / I P协议族中最为核心的协议.所有的 T C P.U D P.I C M P及I G M P数据都以I P数据报格式传输. 不可靠( u n r e ...
- TCP/IP笔记(六)TCP与UDP
终于来到了传输层,这个面试问的最多了,内容比较多,要分两篇来总结,这是第一篇
- 图解HTTP学习笔记——简单的HTTP协议
简单的HTTP协议 前言 最近在学习Web开发的相关知识,发现<图解HTTP>这本书通俗易懂.所以花时间学习这本书,并记录下学习笔记. 如上图,我们每天都在浏览网页,一般我们都是在浏览器地 ...
- TCP/IP协议原理与应用笔记17:IP编址(重点)
1. IP地址(通用标识符) 对于同一个网络设备(主机或路由器)的不同网络连接,需要不同的IP地址进行标识 2. 主机标识符 主要有下面三种方式的主机标识方式: (1)Name:是什么,可读性强(了解 ...
- 《TCP/IP详解 卷1:协议》读书笔记
第一章 概述 协议栈 应用层 HTTP,FTP 运输层 TCP, UDP 段(Segment) 网络层 IP, ICMP, IGMP 数据报(Datagram) 链路层 帧(Frame) 物理 ...
- 『TCP/IP详解——卷一:协议』读书笔记——17
2013-08-27 15:37:42 6.5 ICMP端口不可达差错 端口不可达报文是ICMP差错报文的一种,它是ICMP不可达报文中的一种,以此来看一看ICMP差错报文中所附加的信息.使用UDP来 ...
- 『TCP/IP详解——卷一:协议』读书笔记——15
2013-08-25 13:39:40 第6章 ICMP:Internet控制报文协议 6.1 引言 ICMP经常被认为是IP层的一个组成部分.它传递差错报文以及其他需要注意的信息.ICMP报文同通常 ...
随机推荐
- WEB开发----springboot的登录拦截机制
如果是一个后台的管理项目的,有些东西是不能直接就可以访问的,必须要登录才可以进去,所以就需要进行登录拦截,只有登录过的用户才可以正常访问. 登录拦截是不会拦截jsp页面的方法,所以我们需要在Contr ...
- CodeForces 362C
分析:首先我们要知道调用swap()函数的次数跟什么有关.可以观察发现在Insertion Sort里,当且仅当a[j](j∈[0,i)) > a[i]时会调用一次swap(),也就是说有多少个 ...
- vue2的简单时间选择组件
github: https://github.com/longfei59418888/vui (记得给一个 start,以后有一起讨论,各种好组件) demo : http://60.205.2 ...
- python元组声明要带逗号
python元组声明要带逗号 t2, t3, t4 = (2), (2,),() print(type(t2),type(t3), type(t4)) #<class 'int'> < ...
- android_handler(一)
仅仅是一个简单的handler的样例,目的就是对handler有一个初步的接触. 在layout上加入一个button,点击按钮,然后打印出利用handler传送的数据.(都是执行在mainthrea ...
- C#使用oledb连接excel运行Insert Into语句出现“操作必须使用一个可更新的查询”的解决的方法
我错误发生时的环境:Windows 7,Framework 4.0,Microsoft Office 2007,VS2010,c# WinForm. 部分代码: string strConn = &q ...
- 2014年最简单、快捷的美股Scottrade开户攻略
[开篇重点提示] 1.scottrade是国内用户用得最多的美股证券交易平台. 2.不用邮寄纸质资料,网上开户全搞定. 3.申请表格填写优惠代码,获取免费3次交易费用,鄙人的推荐优惠代码是 87195 ...
- # 导入模块 from wxpy import * # 初始化机器人,扫码登陆 bot = Bot()
# 导入模块 from wxpy import * # 初始化机器人,扫码登陆 bot = Bot()
- table形式的列表页面显示
(该案例在项目中的reserve_bchmc.html,其对应的后台在CountBean中) 先看一下效果图: 该列表页面并不是用easyUI中的datagrid实现的,而是用table实现页面显示的 ...
- 数组和字符串长度length
数组.length 字符串.length() list list.size();map map.size();set set.size();1 java中的length属性是针对数组说的,比如说你声明 ...