图解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报文同通常 ...
随机推荐
- print pdf bug & DOCTYPE
print pdf bug & DOCTYPE OK with <!DOCTYPE html> <!DOCTYPE html> <html lang=" ...
- IDEA中用jetty启动项目时,url 404
问题背景:IDE:IDEA 语言:java 服务器:jetty 框架:nutz 问题描述: 按照nutz构建j2ee项目,配置projectStructor中的依赖,jre,jetty之后,部署,并通 ...
- 0213Zabbix通过percona监控MySQL
因为Zabbix自带的MySQL监控没有提供可以直接使用的Key,所以一般不采用,业界的同学们都使用Percona Monitoring Plugins 监控 MySQL的方式 Percona介绍 P ...
- 移动端,input输入获得焦点被键盘遮住简单解决方案
(function (window,document) { document.querySelector('input[type="text"]').addEventListene ...
- Docker创建PHP镜像
Step: 1. 创建Dockerfile FROM php:7.0-apache RUN chmod -R 755 /var/www 2. 创建镜像 docker build -t docker_n ...
- MongoDB:最简单的增删改查(Oops,可能太简单了)
热身运动: 1. 启动MongoDB shell => mongo.exe or ./mongo(先确保有一个mongod的实例): 2. 切换到一个用于练手的namespace => u ...
- 大话USB驱动之总线驱动程序
转载注明出处:http://blog.csdn.net/ruoyunliufeng/article/details/25040009 总线驱动是不用改的.内核都帮我们做好了.为了了解整个USB驱动的体 ...
- 用JavaScript截图
用JavaScript截图 使用JavaScript截图,这里我要推荐两款开源组件:一个是Canvas2Image,它可以将Canvas绘图编程PNG/JPEG/BMP的图像:但是光有它还不够,我 ...
- 一次c3p0连接池连接异常错误的排查
近期写了一个数据库採集程序,大概过程是将SQLSERVER数据库的数据定时採集到Oracle数据库. 1小时出一次数据,每次数据量在2W左右.环境採用Sping3+hibernate4,数据库连接池採 ...
- LeetCode 8. String to Integer (atoi) (字符串到整数)
Implement atoi to convert a string to an integer. Hint: Carefully consider all possible input cases. ...