图解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报文同通常 ...
随机推荐
- [luoguP1282] 多米诺骨牌(DP + 背包)
传送门 将问题转换成分组背包,每一组有上下两个,每一组中必须选则一个,上面的价值为0,下面的价值为1,求价值最小 因为要求上下两部分差值最小,只需从背包大小为总数 / 2 时往前枚举,找最小答案即可. ...
- hdu 1874 dijkstra 队列实现 比数组高效特别在稀疏图
参考 http://blog.csdn.net/zhuyingqingfen/article/details/6370561 刘汝佳白皮书 #include<stdio.h> #incl ...
- Ubuntu 16.04安装WPS
1.下载 http://community.wps.cn/download/ 根据需要对应版本进行下载deb包. 2.安装 sudo dpkg -i wps-office_10.1.0.5672~a2 ...
- 这篇讲angular 的$q的讲得不错
原文: https://segmentfault.com/a/1190000000402555 ---------------------------------------------------- ...
- IIS2008配置URlRewriter
一: 1:新增将要公布的站点:将自己主动生成的改站点的应用程序池的.net版本号更改为自己的版本号以及托管管道模式改成集成:如图 2:进入站点配置项里面的处理程序映射 watermark/2/text ...
- effective C++ 读书笔记 条款14 以对象管理资源
如果我们使用一个投资行为的程序库: #include "stdafx.h" #include <iostream> #include <memory> us ...
- 模板小程序】求小于等于N范围内的质数
xiaoxi666 联系邮箱: xiaoxi666swap@163.com 博客园 首页 新随笔 联系 订阅 管理 [模板小程序]求小于等于N范围内的质数 1 //筛法求N以内的素数(普通法+优化 ...
- php 把一个数组分成有n个元素的二维数组的算法
一.第一种解法 <?php //把一个数组分成几个数组 //$arr 是数组 //$num 是数组的个数 function partition($arr,$num){ //数组的个数 $list ...
- VC中CString和WPARAM之间的相互转换
在传递自己定义消息的过程中.须要转换CString 变量. 在发送消息端使用例如以下方法: SendMessage(WM_MESSAG_MINE,0,(LPARAM)strVal.AllocSysSt ...
- 修改this指向(bind、call 和 apply)
一.bind 首先: var alertWrite = document.write; alertWrite('who am I?'); 这两行代码的运行结果是什么呢?不要急着回答,看完下面的内容再回 ...