自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 考核作业汇总

P4: Programming Protocol-Independent Packet Processors:OpenFlow: Enabling Innovation in Campus Networks:dRMT: Disaggregated Programmable Switching:Mininet实战课程:P4语言学习——basic实验:P4语言学习——basic_tunnel实验: Tofino架构学习:

2023-09-19 23:28:22 54

原创 dRMT: Disaggregated Programmable Switching

以前的可编程交换机架构采用RMT,但是这有两大缺点:1、一个阶段没有使用的内存不能被另一阶段回收 2、数据包总是顺序执行匹配和操作。因此dRMT横空出世,在内存方面:dRMT将表的内存与处理阶段分开,并通过横杆访问它们。横杆在匹配/操作单元和内存之间来回携带搜索键和结果。在计算方面:dRMT用一组匹配-操作处理器取代了RMT的顺序连接的管道阶段。这种灵活性导致dRMT相对于RMT的硬件利用率增加,减少了运行程序所需的硬件量。

2023-09-19 22:48:44 212

原创 Tofino芯片架构

如下图所示, Tofino采用的是一种匹配管道,首先传入的数据包是字节流,经过解析器的解析成为PHV,之后传递到匹配操作单元序列,在上面可以进行:从数据包上提取密钥并在匹配表中寻找对应的操作产生新的字段。Deparser是匹配操作管道中的最后一个单元。至于对表的匹配操作就是用P4来编写,先匹配最底层的协议接着一层层往上匹配,匹配仅需要数据包提供的标头值,这样的好处是可以同时进行匹配减少管道延迟,如下图所示。32个bit的字段被分为32个组,16个bit的字段被分为16个组,8个bit的字段被分为24个组。

2023-09-19 22:05:12 689

原创 Mininet实战课程

2、因为教程里有很多是把它预置的代码复制粘贴到一个创建好的空文件里,本来想偷个懒不复制粘贴,但是不知道为什么直接使用已经写好代码的文件exper.py,它显示no such option,后来只能乖乖把这个文件里的内容复制粘贴到exper1.py(教程就是要运行exper1.py)上,然后执行这个命令。1、首先就是系统预置的文件你打不开,它会提示你权限被拒绝,这时候就尝试执行"su root"命令,将自己转为管理员,重新打开文件还是一样的结果。至此最后一个实验就完成了 ,下面放上实验完成的截图。

2023-09-17 17:03:48 202

原创 P4语言学习(2)——basic_tunnel实验

在h1上执行"./send.py 10.0.2.2 "P4 is cool""命令,将这一数据包发送给地址为10.0.2.2的主机也就是h2,可以看到h2成功接收到。在h1上执行"./send.py 10.0.3.3 "hhhhh""命令,将这一数据包发送给地址为10.0.3.3的主机也就是h3,可以看到h3成功接收到。最后执行"exit"命令退出并关闭xterm,执行"make stop"和"make clean"命令,清除创建的拓扑。执行"xterm h1 h2"显示出h1和h2的虚拟终端。

2023-09-17 13:58:48 154

原创 P4语言学习(1)——basic实验

先打开topology.json文件和pod-topo.png文件,看看我们要创建的拓扑,可以看出是有4台主机,4台交换机,它们之间关系如下图所示。值得注意的是定义switches的时候,会定义载入到交换机的流表项文件”sN-runtime.json”。接着用终端打开basic文件,执行"make run"命令,即可创建四台交换机:s1,s2,s3,s4;将输出的端口从参数中获取,将数据包的源地址改为目的地址,目的地址改为控制面传入的新地址并将TTL减1。如下所示,这里缺失了对数据包解析的代码。

2023-09-16 21:08:48 288

原创 OpenFlow: Enabling Innovation in Campus Networks

1.如果你想要处理自己的网络,OpenFlow交换机通过正常的处理管道转发除你以外的数据包,而你自己所需的数据包直接到传出端口,接着添加一个流条目来让所需数据包全部转发给控制器,为了避免出现控制器无法处理新流和故障等问题,可以使用简单的流交换机和中央控制器。之前不可行的方法:1.商业交换机和路由器通常不提供开放的软件平台,网络供应商也不愿意在他们的交换机里开放接口。其次是可以连接到控制器的安全通道;能够支持广泛的研究;流表的条目既需要定义流的包报头,定义如何处理数据包,也要统计流的数据包、内存、时间。

2023-09-15 13:28:11 129

原创 P4: Programming Protocol-IndependentPacket Processors

例如,程序员可能会声明一个IPv4标头,包含版本,头长度,服务类型,总长度,标识符,标志,片偏移,生存时间,协议,校验和,源IP地址和目标IP地址等字段。入口匹配+操作确定出口端口并确定数据包放入的队列,出口匹配+操作对包报头执行每个实例的修改,数据包可以在阶段之间携带称为元数据的附加信息,操作将数据包映射到队列,队列被配置为接收特定的服务规则,其被选择为交换机配置的一部分。每个转换都可能由当前标头中的值触发。中的特定字段,这些字段的值取决于该交换机在层次结构中的位置,以及数据包的传递方向(上行或下行)。

2023-09-14 18:35:36 1188

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除