| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> TCP/IP基础知识 -> 正文阅读 |
|
[网络协议]TCP/IP基础知识 |
目录 一、物理层1、传输介质(1)同轴电缆
(2)双绞线
(1)可以分为非屏蔽双绞线和屏蔽双绞线 ? ? ? ? ?区别:屏蔽双绞线在外层边缘有金属屏蔽层,可以屏蔽电磁干扰 (2)根据线序不同可以分为直通线、交叉线和反转线 ? ? ? ? ?●直通线:用于不同设备相连,如:PC与交换机 ? ? ? ? ?●交叉线:用于同种设备相连,如:PC与PC ? ? ? ? ?●反转线:用于连接交换机和路由 (3)光纤与前两种区别:前两种采用的是电信号,光纤采用的是光信号
●单模光纤:亮黄色,适合长距离传输 ? 多模光纤:橙黄色,适合短距离传输 (4)串口电缆
现在用的很少,在传统网络上会用到。 2、冲突域●冲突域是指通过共享式网络(由同轴电缆组成的共享式网络环境)物理介质进行双向传送的所有结点的集合,可能会出现信号冲突的现象。 ●解决方案:CSMA /CD 多址接入载波监听 ●CSMA/CD原理:所有终端时刻处于监测网络的状态,监测网络是否空闲。如果此时网络处于空闲状态,就可以发送数据;如果网络中有冲突就立马停止发送,等待直到检测到链路状态为空闲时再发送。 ●总结:先听后发 边听边发 冲突停发 随机延迟后重发 3、双工模式●可分为半双工模式和全双工模式。 ●异同:两者都支持双向数据传输,即既能接收数据,也能发送数据。但全双工可以同时进行接受和发送发送数据,半双工不能同时进行接受和发送数据,如:对讲机。 二、数据链路层1、分层模型(1)OSI七层模型●数据链路层:变成了比特字节流 ●传输层:TCP、UDP (2)TCP/IP分层模型2、数据封装3、 帧格式?(1)Ethernet_II帧格式●Type:判断使用的是哪一种封装模式,判断数据帧上层使用的是哪一种协议 判断依据:Ethernet_II帧类长度大于等于1536(0x600),以太网数据帧长度在64-1518字节之间 ●Data:46-1500字节 ●FCS帧校验:错误检测机制 (2)IEEE802.3帧格式4、数据帧传输数据链路层基于MAC地址进行帧的传输。 (1)以太网的MAC地址格式?(2)单播即A和B一对一发送数据 ?(3)广播?(4)组播5、 数据帧的发送和接受当主机接收到的数据帧所包含的目的MAC地址是自己时,会把以太网封装剥掉后送往上层协议。 三、IP协议网络层包含了许多协议,其中最为重要的协议就是IP协议。网络层提供了IP路由功能。 1、上层协议类型?以太网帧的Type字段值为0x0800,表示该帧的网络层协议为IP协议。 2、IP报文头部●Identification标识:标识同属于哪个数据包 ●Flags标志:用来判断最后一个分片已收到,将最后一片标为0,其他标为1 ●Fragment Offset片偏移:用来顺序重组这些片 ●Time To Live生存时间。每经过一台路由器时,该字段值减1,当减为0时,则丢弃该数据包。确保数据包不会在网络中循环。 ●Protocol协议号:指明IP数据报应该交给哪个传输层协议(6为TCP、17为UDP、1为ICMP) 3、?IP地址分类IP地址类型: 4、IP编址IP地址有32个二进制位组成,通常用点分十进制形式表示。分为网络部分和主机部分。 例:
●网络地址和广播地址不可以使用。 5、子网掩码●子网掩码用来识别网段,网络部分用全1表示,主机部分用0表示。 ●用子网掩码和IP地址共同表示属于哪个网段:相与操作,得到网络地址 ●默认子网掩码: ●地址规划 n为主机位的0的个数,最后的可用主机数减去广播位和主机位。 6、网关网关是接受、处理本地网段主机发送的报文,并转发给目的网段的设备,用来转发来自不同网段之间的数据包。 四、ICMP协议Internet控制消息协议ICMP(Internet Control Message Protocol)是网络层的一个重要协议。ICMP协议用来在网络设备间传递各种差错和控制信息,并对于收集各种网络信息、诊断和排除各种网络故障等方面起着至关重要的作用。?ICMP用来传递差错、控制、查询等信息。 1、ICMP数据包格式●Type消息类型:表示ICMP消息类型 ●Code编码类型:具体表示属于哪一类的消息类型 ●Checksum:检测消息完整性 ●ICMP消息类型和编码类型: 2、ICMP重定向主要用于路由功能。 3、ICMP差错检测?ICMP Echo Request和ICMP Echo Reply分别用来查询和响应某些消息,进行差错检测。 4、ICMP错误报告?当目标设备无法访问目标网络时,会自动发送ICMP目的不可达报文到发送端设备。 5、应用(1)ping用于检测网络连通性 (2)tracert用于测试连通性、跟踪路径。 五、ARP协议通过目的IP地址来获取目的MAC地址的过程是由ARP(Address Resolution Protocol)协议来完成的。 1、ARP数据包格式属于广播报文,不能穿越路由器,不能被转发到其他广播域。 ●Hardware Type硬件类型:一般是以太网 ●Protocol Type协议类型:一般是IP协议 ●Hardware Length:MAC地址长度 ●Protocol Length:IP地址长度 ●Operarion Code:指定报文类型,是request还是reply 2、ARP请求3、ARP响应4、 ARP代理?同一网段不同物理网络上的主机,可以在不配置网关的情况下通过ARP代理进行相互通信。 5、免费ARP探测IP地址是否冲突。 六、传输层协议传输层定义了主机应用程序之间端到端的连通性。传输层中最为常见的两个协议分别是传输控制协议TCP(Transmission Control Protocol)和用户数据包协议UDP(User Datagram Protocol)。 1、TCPTCP是面向连接的传输层协议,提供可靠的传输服务。 (1)端口号(2)TCP报文头部●Sequence Number序列号:字节流的每个字节的编号 ●Acknowledge Number确认序列号:对另一方发来的TCP报文段的响应 ●URG:表示紧急指针(Urgent Point)是否有效 ●ACK:表示确认号是否有效,确认标志位 ●PSH:提示接收端立即从TCP接收缓存区中读走数据,为接受后续数据腾出空间 ●RST:要求对方重新建立连接,复位标志位 ●SYN:请求建立一个连接,同步标志位 ●FIN:通知对方要关闭连接了,结束标志位 ●Window:控制流量大小 ●Urgent Pointer:紧急指针 (3)建立连接:三次握手(4) TCP流量控制滑动窗口 (5)关闭连接:四次挥手2、 UDPTCP是面向无连接的传输层协议,传输可靠性没有保证。 (1)UDP报文头部(2)传输过程使用UDP传输数据时,由应用程序根据需要提供报文到达确认、排序、流量控制等功能。 UDP不提供重传机制,占用资源小,处理效率高。因此一些时延敏感的流量如语音、视频等,通常使用UDP作为传输层协议。 七、数据转发过程1、封装过程2、解封装服务器A检查数据包的目的IP地址,发现目的IP地址和自己的IP地址相同 ->服务器A剥掉数据包的IP头部后,会送往上层协议的TCP继续进行处理 ->服务器A检查TCP头部的目的端口号,然后将数据段发送给应用层的HTTP协议进行处理交给特定的应用 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 7:38:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |