当前位置: 首页 > news >正文

重温TCP-IP学习笔记——1/3

七层协议



DNS
一个提供host到IP映射的分布式数据库服务。


HEADER信息逐层添加过程





网络层点对点通信(运输层是端到端)



ARP:IP地址解析出MAC地址(每台主机有ARP缓冲区,存IP与MAC的映射)
RARP:MAC地址解析IP地址
IGMP:UDP多播
ICMP:发送错误报文信息,典型应用:Ping,traceroute
5类IP地址



数据包从下向上分发过程





TCPIP协议两种编程接口: socket(https://en.wikipedia.org/wiki/Network_socket),tli(https://en.wikipedia.org/wiki/Transport_Layer_Interface)


SLIP协议(https://en.wikipedia.org/wiki/Serial_Line_Internet_Protocol)
CSLIP协议(压缩的slip)
PPP协议的优点:
(1) PPP 支持在单根串行线路上运行多种协议,不只是I P 协议;
(2)  每一帧都有循环冗余检验; 
(3)  通信双方可以进行 I P地址的动态协商(使用I P 网络控制协议); 
(4)  与C S L I P类似,对T C P和I P 报文首部进行压缩; 
(5)  链路控制协议可以对多个数据链路选项进行设置。为这些优点付出的代价是在每一帧的首部增加 3个字节,当建立链路时要发送几帧协商数据,以及更为复杂的实现。


MTU:(IP层)最大传输单元,超过就要分片。路径也有MTU,是不对称的。

环回接口处理数据报




Ping 程序
Ping程序用来测试另一台主机是否可达。该程序发送一份ICMP回显请求报文给主机,并等待返回ICMP回显应答。
可以ping通,未必可以telnet;不能ping通大多数情况不能telnet,但也有可能可以telnet。


traceroute程序
Traceroute程序可以让我们看到IP数据报从一台主机传到另一台主机所经过的路由。 


IP静态选路。
在路由表查询并决定发送的网络接口。查询主机地址,网络地址以及默认表项。


动态选路
路由器中的守护程序运行选路协议,与相邻路由器通信并更新路由表。
RIP。根据距离进行路由。优点:实现简单。缺点:最大距离15,可使用的网络规模有限。使用UDP协议。
OSPF。最短路径优先。每个路由器主动地测试与其邻站相连链路的状态,将这些信息发送给它的其他邻站,而邻站将这些信息在自治系统中传播出去。每个路由器接收这些链路状态信息,并建立起完整的路由表。使用IP协议。
BGP。用于不同自治系统(公司或校园)路由器之间通信。使用TCP协议。
CIDR。防止路由表不断膨胀。让IP地址进行归并从而减少路由记录数量。

相关文章:

  • 嵌入式GUI设计第一阶段回顾
  • 重温TCP-IP学习笔记- 2/3
  • Windows Mobile 6.5 Widgets开发初体验
  • 重温TCP-IP学习笔记 3/3
  • android webview 跳过免费ssl证书验证
  • android webview file标签点击弹出选择文件或拍照菜单
  • AzureAD 错误信息Access token validation failure
  • android webview实现拍照
  • lens flare:镜头光晕
  • SQL批处理 导入excel数据到表
  • opengl粒子系统的渲染方式
  • html5 canvas上传图片后预览
  • ZBuffer裁剪planar shadow
  • 3D几何流水线之模型变换
  • html5 canvas 加载图片错误 SecurityError: Failed to execute 'toDataURL' on 'HTMLCanvasElement'
  • 深入了解以太坊
  • JavaScript 基础知识 - 入门篇(一)
  • Java比较器对数组,集合排序
  • java第三方包学习之lombok
  • JSDuck 与 AngularJS 融合技巧
  • scala基础语法(二)
  • spring学习第二天
  • Travix是如何部署应用程序到Kubernetes上的
  • ubuntu 下nginx安装 并支持https协议
  • 经典排序算法及其 Java 实现
  • 如何胜任知名企业的商业数据分析师?
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 它承受着该等级不该有的简单, leetcode 564 寻找最近的回文数
  • 探索 JS 中的模块化
  • 小试R空间处理新库sf
  • 你对linux中grep命令知道多少?
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (delphi11最新学习资料) Object Pascal 学习笔记---第8章第5节(封闭类和Final方法)
  • (SpringBoot)第二章:Spring创建和使用
  • (附源码)springboot 房产中介系统 毕业设计 312341
  • (五)Python 垃圾回收机制
  • (轉貼) 資訊相關科系畢業的學生,未來會是什麼樣子?(Misc)
  • .NET Core 2.1路线图
  • .NET 分布式技术比较
  • .NET国产化改造探索(三)、银河麒麟安装.NET 8环境
  • .NET和.COM和.CN域名区别
  • .NET连接MongoDB数据库实例教程
  • .vue文件怎么使用_我在项目中是这样配置Vue的
  • /proc/stat文件详解(翻译)
  • @EventListener注解使用说明
  • @media screen 针对不同移动设备
  • [ C++ ] 继承
  • [ 云计算 | AWS ] 对比分析:Amazon SNS 与 SQS 消息服务的异同与选择
  • [].slice.call()将类数组转化为真正的数组
  • [<MySQL优化总结>]
  • [1525]字符统计2 (哈希)SDUT
  • [AutoSar]BSW_Com02 PDU详解
  • [BZOJ3211]:花神游历各国(小清新线段树)
  • [Flexbox] Using order to rearrange flexbox children