Introduction to Computer Networking学习笔记(十七):Switching and Forwarding 交换与转发
参考帖子地址:https://blog.csdn.net/djl806943371/article/details/89391128
Switching与Forwarding是两个不同的概念。Switching是指端对端之间的数据交换,而Forwarding是指一个路由对收到的数据包进行转发。例如,同一个局域网内,client之间交换数据是Switching;而不同网络下需要穿过路由发送数据时,路由则是Forwarding数据包。
一般性包交换(packet switch)
- 寻找地址,通过forwarding table找到egress link
- 更新header,比如减少TTL,更新checksum
- 对packet进行排队操作
packet switch中要介绍下面两种类型 ethernet switching 和 internet router forwarding
Ethernet Switching过程:
- 检查每个到达的帧的首部
- 如果DA(Destination Address)能在转发表中找到,则直接转发到相应端口
- 如果DA不能再转发表中找到,则将这一帧广播给除发送者外的所有端口
- 当任意一个client收到来自其他client的数据包时都会将发送者的SA存储或更新到转发表
Internet Router Forwarding:
- 如果到达的帧的 Ethernet DA与自己MAC一致,则接收该帧,否则丢弃
- 取出IPdatagram,检查IP版本和datagram长度
- TTL减1,并更新校验和
- 检查TTL是否为0
- 如果IP DA能够在转发表找到,获取下一站的IP
- 将下一站IP转为Ethernet DA
- 创建一个新的帧并发送
查找可以采用二叉字典树或Ternary Content Addressable Memory (TCAM),后者常用,同时比对表中所有IP DA查找最长匹配的一个。
Introduction to Computer Networking学习笔记(十七):Switching and Forwarding 交换与转发相关推荐
- Introduction to Computer Networking学习笔记(十五):Queue Model 包交换中的缓冲模型
本章知识点比较零散,因此一篇文章进行总结,并且不具有连贯性,仅记录自己认为有价值的内容. 将较大的包拆分为小包进行传输,可以减小端对端延迟,原因如下图: 数据传输时,突发大量的数据包会增加延迟,简单周 ...
- windows内核开发学习笔记十七:IRP 和 IO_STACK_LOCATION 的交互
windows内核开发学习笔记十七:IRP 和 IO_STACK_LOCATION 的交互 前面两篇学习笔记分别介绍了IRP和IO_STACK_LOCATION,整个设备栈来处理这个IRP,但是每个设 ...
- Polyworks脚本开发学习笔记(十七)-制作宏脚本自定义工具条
Polyworks脚本开发学习笔记(十七)-制作宏脚本自定义工具条 做好的宏脚本程序,每次打开脚本加载程序太多麻烦,为了方便的调用脚本做各种操作,可以使用系统的自定义工具条功能将脚本加载到工具条上. ...
- OpenCV学习笔记(十七)——K均值聚类
当我们要预测的是一个离散值时,做的工作就是"分类".机器学习模型还可以将训练集中的数据划分为若干个组,每个组被称为一个"簇(cluster)".它的重要特点是在 ...
- kvm虚拟化学习笔记(十七)之KVM到KVM之v2v迁移
1.源KVM虚拟主机node1 (1).查看源KVM虚拟主机上的虚拟机列表,本文计划将CentOS6.5-01虚拟机迁移到其它KVM虚拟主机中. [root@node1 ~]# virsh list ...
- 【theano-windows】学习笔记十七——梯度中的consider_constant
前言 主要是在写玻尔兹曼机相关的theano时, 在计算梯度grad的时候发现一个参数名字叫做consider_constant,来看看这个到底做了什么事情 参考博客: using consider_ ...
- Mr.J-- jQuery学习笔记(十七)--动画淡入淡出弹窗广告
之前写过动画的隐藏与显示:Mr.J-- jQuery学习笔记(十四)--动画显示隐藏 动画隐藏与显示的一个小demo--对联广告:Mr.J-- jQuery学习笔记(十五)--实现页面的对联广告 展开 ...
- Java学习笔记十七——集合类详细总结各自对比
Java编程基础倒数第三篇,感谢没有放弃的自己. 学习笔记参考书籍<Java编程基础>主编 张焕生.本书内容比较适合没有什么基础的入门小白,学完一章还有习题,比较适合初学者. 自律.积极. ...
- CS269I:Incentives in Computer Science 学习笔记 Lecture 13:Introduction to Auctions(拍卖简介)
Lecture 13 Introduction to Auctions(拍卖简介) 1 Preamble(前言) 为什么计算机科学家要关心拍卖?直到最近(甚至可能仍然),提到拍卖,我们脑海中联想到的图 ...
- 概率导论(Introduction to Probability, 2E)学习笔记 Part Ⅰ
笔记内容基于Introduction to Probablity, Second Edition 因笔者为初学者,故内容不会面面俱到 若有表述错误还望直接指出 --2022.1 样本空间与概率 本书的 ...
最新文章
- hibernate中的hql查询语句list查询所有与iterate查询所有的区别
- RHEL5系统X桌面中文乱码解决办法
- MYSQL查询数据中通讯最多的两个人
- hashmap为什么用红黑树_全网最全,面试常问的HashMap知识点
- 红帽子linux安装ftp,Linux 安装 vsftpd ftp软件包
- 首届大湾区 DevOps/微服务秋季分享会圆满落幕!
- javabean连接mysql数据库,jsp+javabean 链接 mysql 数据库
- (一)使用MLOps自动训练、测试和部署AI:概述
- php session的一些理解
- 物流配送管理系统(ssm,mysql)
- 共同富裕、乡村振兴专题:基尼系数、恩格尔系数、泰尔指数-数据大全整理
- 解码器常见故障及解决方法
- 操作系统引导详细过程
- kafka-eagle 使用配置及远程jmx端口设置遇到的问题
- wifi大师分销多开v3.1.5安装教程附带源码
- 基于ROS设计一款机械臂控制系统 [转发]
- [ODBC Driver 18 for SQL Server]SSL 提供程序: 证书链是由不受信任的颁发机构颁发的
- SprintBoot:Post请求的参数多一个逗号的解决方法
- 彻底解决 Windows 下 PHP 响应异常缓慢的问题
- 如何在Power BI Desktop中创建词云生成器