tcp/ip ---------- 链路层

2024-06-22 20:08
文章标签 ip 链路层 tcp

本文主要是介绍tcp/ip ---------- 链路层,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!



链路层
 三个目的:
  1、为ip模块发送和接收ip数据报
  2、为ARP模块发送ARP请求和接收ARP应答
  3、为RARP模块发送请求和接收应答

SLIP协议
 SLIP适用于家庭中每台计算机几乎都有的RS-232串行端口和高速调制解调器接入internet
 缺陷:
  1、每一端必须知道对方的IP地址,没有办法把本端的IP地址通知给另一端
  2、数据帧中没有类型字段。如果一条串行线路用于SLIP,那么他不能同时使用其他协议
  3、SLIP没有在数据帧中加上检验和。若SLIP传输的报文发生错误,只能通过上层协议来发现


PPP点对点协议
 该协议修复了SLIP所有的缺陷
  1、在串行链路上封装 IP数据报的方法。 PPP既支持数据为 8位和无奇偶检验的异步模式 (如大多数计算机上都普遍存在的串行接口),还支持面向比特的同步链接。
  2、 建立、配置及测试数据链路的链路控制协议(LCP)。它允许通 信双方进行协商,以确定不同的选项。
  3、 针对不同网络层协议的网络控制协议( NCP)体系。当前 RFC 定义的网络层有IP、OSI网络层、DECnet以及AppleTalk。例如,IP NCP允许双方商定是 否对报文首部进行压缩,类似于CSLIP(缩写词N C P也可用在T C P的前面)。

 相较于SLIP,具有以下优点:
  1、支持多种协议,不只是IP协议
  2、每一帧都有循环冗余检验
  3、通信双方可以进行IP地址的动态协商(使用NCP)
  4、拥有LCP
  5、与CSLIP类似,对TCP和IP报文首部进行压缩


环回接口
 一个传给环回接口的IP数据报不能再任何网络上出现
 一旦传输层检测到目的端地址是环回地址时,大多数的产品还是照样完成传输层和网络层的所有过程,只是当IP数据报离开网络层时候把它返回给自己

 几个关键点:
  1、传给环回地址的任何数据均作为IP输入
  2、传给广播地址或多播地址的数据复制一份传给环回接口,然后送到以太网上。(广播、多播包含自身)
  3、任何传给自己主机IP地址的数据均送到环回接口(Anything sent to one of the host's own IP addresses is sent to the loopback interface .)


路径MTU
 当两台主机相互通信,且主机之间要通过多个网络,那么每个网络肯可能有不同的MTU,因此最重要的是两台主机通信路径中最小的MTU,及路径MTU

这篇关于tcp/ip ---------- 链路层的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085282

相关文章

Spring Boot 实现 IP 限流的原理、实践与利弊解析

《SpringBoot实现IP限流的原理、实践与利弊解析》在SpringBoot中实现IP限流是一种简单而有效的方式来保障系统的稳定性和可用性,本文给大家介绍SpringBoot实现IP限... 目录一、引言二、IP 限流原理2.1 令牌桶算法2.2 漏桶算法三、使用场景3.1 防止恶意攻击3.2 控制资源

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

SpringBoot快速搭建TCP服务端和客户端全过程

《SpringBoot快速搭建TCP服务端和客户端全过程》:本文主要介绍SpringBoot快速搭建TCP服务端和客户端全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录TCPServerTCPClient总结由于工作需要,研究了SpringBoot搭建TCP通信的过程

Java根据IP地址实现归属地获取

《Java根据IP地址实现归属地获取》Ip2region是一个离线IP地址定位库和IP定位数据管理框架,这篇文章主要为大家详细介绍了Java如何使用Ip2region实现根据IP地址获取归属地,感兴趣... 目录一、使用Ip2region离线获取1、Ip2region简介2、导包3、下编程载xdb文件4、J

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

Go语言开发实现查询IP信息的MCP服务器

《Go语言开发实现查询IP信息的MCP服务器》随着MCP的快速普及和广泛应用,MCP服务器也层出不穷,本文将详细介绍如何在Go语言中使用go-mcp库来开发一个查询IP信息的MCP... 目录前言mcp-ip-geo 服务器目录结构说明查询 IP 信息功能实现工具实现工具管理查询单个 IP 信息工具的实现服

Python中使用正则表达式精准匹配IP地址的案例

《Python中使用正则表达式精准匹配IP地址的案例》Python的正则表达式(re模块)是完成这个任务的利器,但你知道怎么写才能准确匹配各种合法的IP地址吗,今天我们就来详细探讨这个问题,感兴趣的朋... 目录为什么需要IP正则表达式?IP地址的基本结构基础正则表达式写法精确匹配0-255的数字验证IP地

Linux系统中配置静态IP地址的详细步骤

《Linux系统中配置静态IP地址的详细步骤》本文详细介绍了在Linux系统中配置静态IP地址的五个步骤,包括打开终端、编辑网络配置文件、配置IP地址、保存并重启网络服务,这对于系统管理员和新手都极具... 目录步骤一:打开终端步骤二:编辑网络配置文件步骤三:配置静态IP地址步骤四:保存并关闭文件步骤五:重

Linux配置IP地址的三种实现方式

《Linux配置IP地址的三种实现方式》:本文主要介绍Linux配置IP地址的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录环境RedHat9第一种安装 直接配置网卡文件第二种方式 nmcli(Networkmanager command-line

Linux虚拟机不显示IP地址的解决方法(亲测有效)

《Linux虚拟机不显示IP地址的解决方法(亲测有效)》本文主要介绍了通过VMware新装的Linux系统没有IP地址的解决方法,主要步骤包括:关闭虚拟机、打开VM虚拟网络编辑器、还原VMnet8或修... 目录前言步骤0.问题情况1.关闭虚拟机2.China编程打开VM虚拟网络编辑器3.1 方法一:点击还原VM