
网络相关
文章平均质量分 60
OMNet仿真及网络相关内容
逆袭的小羊
这个作者很懒,什么都没留下…
展开
-
计算机网络学习:二三层转发
转载自:大佬写的很详细,学习一下。转载 2024-08-10 16:28:28 · 1161 阅读 · 0 评论 -
wireshark常见过滤规则
【代码】wireshark常见过滤规则。原创 2024-08-03 17:09:48 · 586 阅读 · 0 评论 -
计算机网络学习:TCP握手&挥手&强制连接中断
TCP三次握手&四次挥手&RST强制中断连接的报文情况原创 2024-08-03 17:01:07 · 1479 阅读 · 0 评论 -
NS3运行Reno,BBR,CUBIC等拥塞控制算法
从ns-3.33版本开始,NS3支持CUBIC。从ns-3.34版本开始,支持BBR v1。呜呜呜,感谢前人!!!我用的是ns-3.34, 代码直接改自ns-3.34/examples/tcp/tcp-linux-reno.cc, 呃。也不用改,直接拷贝到scratch文件夹下运行就行…不过运行的只有reno,可以稍微,稍微改一丢丢:可以运行:NewReno,Reno,BBR, CUBIC,Veno等拥塞控制算法// Network topology//// n0 --------原创 2022-05-25 15:22:50 · 4033 阅读 · 8 评论 -
NS3 csma网络莫名丢包
这两天在做NS3仿真的时候,发现了一个莫名的问题,我的实验环境大概是这样的//实验拓扑:// n2 --------------- --------------- n4// | point to point |// csma n0 =========== n1 csma//原创 2022-05-03 16:09:15 · 1145 阅读 · 5 评论 -
NS3统计丢包数
ns3可以根据数据包的序列号自己统计丢包,统计方法如下:发送端//添加头文件#include "ns3/packet-loss-counter.h"//在生成数据包时,添加包头 SeqTsHeader seqTs; seqTs.SetSeq (m_sent); Ptr<Packet> p = Create<Packet> (m_size-(8+4)); // 8+4 : the size of the seqTs header p->AddHeader原创 2022-04-25 20:55:55 · 2295 阅读 · 0 评论 -
NS3数据包时延计算-数据包头
如果要在接收端得到数据包的传输时延,那么就需要在接收端得到数据包的发送时间和数据包到达时间,后者非常简单,直接在收到包的时候Simulator::Now ().GetSeconds ()即可,而怎样得到数据包的发送时间呢。有三种方法:创建跟踪源并使用回调来获取每个数据包的创建/发送时间和发送/接收时间。 然后你可以计算延迟使用标签来标记数据包的创建/发送时间,并在收到时读取此标签并计算延迟使用包头(或仅包头中的字段)包含创建/发送的时间,并在收到包头时读取该包头第二种方法见:NS3数据包时原创 2022-04-25 20:10:51 · 1892 阅读 · 1 评论 -
论文总结:XLINK(SIGCOMM‘21)
自己看论文方法有点问题,最近尝试做一些改变。这是一篇今年的SIGCOMM,看完之后来记录一下。XLINK: QoE-Driven Multi-Path QUIC Transport in Large-scale Video Services大规模视频服务中 QoE驱动的多路径QUIC传输方案。解决的主要问题:多路径中队头阻塞问题QUIC中多流阻塞问题平衡开销与性能的关系(不太重要)XLINK的核心思想充分利用QUIC是一个用户空间协议的优势利用QoE内容进行包的调度和路径管理XL原创 2021-08-24 11:23:48 · 1185 阅读 · 0 评论 -
NS3中数据包添加有效负载
目的:将自己想发送的内容放到packet中,使其发送到客户端显示。说白点就是让数据包夹带私货,可以输出时延、丢包率等信息。你要是问为什么不使用日志系统,呃,问就是不会…发送端:在生成数据包函数中添加或修改:std::ostringstream msg; msg << "I love you!" << '\0';uint16_t packetSize = msg.str().length()+1;Ptr<Packet> packet = Create<原创 2021-07-20 21:37:48 · 884 阅读 · 4 评论 -
socket编程流程与函数(实用篇)
首先要明白,三元组可以标识唯一主机的唯一应用程序,网络中进程的通信就可以利用三元组的标志与其他进程之间进行交互。三元组是:ip地址、端口号和连接(通讯链路)。或者也可以说是五元组:(协议,本地地址,本地端口号,远地地址,远地端口号)socket编程建立连接的流程如下:1.什么是socket网络中的进程是利用socket来进行通信的。socket对于linux/Unix来说是一个特殊的文件,一些socket函数会进行读写io、关闭、打开等功能2.socket的基本操作2.1 socket()函数原创 2021-06-14 22:30:48 · 1843 阅读 · 1 评论 -
Socket套接字的速率控制(linux)
发送端系统:ubuntu18.04接收端系统:ubuntu18.04最近要做一些socket的实验,我对socket也不大了解,不过socket还算是比较好学的,算是在应用层和传输层中间,给你提供了调用了传输协议的api,还是很友好的哦!哦吼!我要对socket发送文件的速率进行限制,想要把文件传输速率限制到想要设置的速率。大概原理如下:一、主要原理比如说,我要把文件的传输速率限制到10Mbps,他等同于,在一秒钟传输10Mbit的内容。所以我们需要定时器+文件传输限制。大概就这两部分。sock原创 2021-06-14 22:07:49 · 5915 阅读 · 1 评论 -
带宽测量:带宽测量工具下载
带宽测量:带宽测量工具下载1.有线网络中带宽测量工具pchar工具下载: http://www.kitchenlab.org/www/bmah/Software/pchar/pathar工具下载:https://www.caida.org/tools/utilities/others/pathcharpathload工具下载:https://www.cc.gatech.edu/fac/Co...原创 2020-05-05 12:21:13 · 971 阅读 · 0 评论 -
NS3-命令行参数
参考书:《NS-3网络模拟器基础与应用》–马春光、姚建盛这里有电子版:链接: https://pan.baidu.com/s/1z7PpGkYKd6dt6pIwTfYj5g 密码: kisn。如果百度网盘不骗我的话,应该是永久有效的。命令行可以传递参数修改系统已有参数。一、修改系统参数ns-3还提供了另一种不需要重新编辑和构建脚本运行行为的方法。这种方法就是通过命令行传递参数来改变脚本中的变量。不过在使用命令行系统前,首先要声明一个命令行类的对象,然后调用Parse,具体方法如下:int ma原创 2021-03-17 22:20:52 · 1550 阅读 · 1 评论 -
ubuntu安装eclipse及问题
因为要用eclipse做NS3(C++)的仿真,所以下了个eclipse。我发现我只要下一个软件,但凡是跟学习沾点边,他都会翻车。哭了,命运这是在暗示什么吗?系统:ubuntu18.04(+win10双系统)jdk版本:1.8.0_282,也就是软件包jdk-8u***-linux-x64.tar.gzeclipse版本:其中jdk的版本比较重要,因为要和eclipse适配,否则就会出现jdk下载好,环境变量配置好,eclipse也下载好了,但就是打不开的情况。很让人无奈。一、下载安装JDK可以原创 2021-03-11 17:42:58 · 1949 阅读 · 1 评论 -
NS3入门--second.cc
哦吼!Second,second.cc!/* -*- Mode:C++; c-file-style:"gnu"; indent-tabs-mode:nil; -*- *//* * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free原创 2021-03-05 09:45:12 · 575 阅读 · 1 评论 -
NS3入门--first.cc
因为实验的需要,被迫从OMNet++转战到NS3,哎,OMNet还没闹明白呢…这大概就是先帝创业未半而中道崩殂吧!呸呸呸,今天看一下NS3中examples中tutorial的第一个例程first.cc一、NS3编程逻辑大概是这样的:1.头文件2.命名空间:(using namespace ns3),将ns3项目和非ns3项目区分开。在ns3使用标准库函数时需要添加std名字空间,如“std::cout”,“std::min()”等。3.NS_LOG_COMPONENT_DEFINE(“first转载 2021-03-04 09:55:03 · 1110 阅读 · 6 评论 -
OMNet++新建工程及运行
版本:5.6.2刚下了OMNet++,尝试跑了一下例程。因为是第一次接触,所以感觉OMNet和自己配合的并不是很好。昨天新建并运行了第一个工程:TicToc1,流程大概是这样的:创建及运行仿真1.打开OMNET++的IDE2.新建OMNET++工程文件:FILE-NEW-OMNET++PROJECT3.工程文件设置输入工程名称选择一个空工程选项,Finish然后就出现了你创建的工程文件4.添加NED文件NED文件是用来定义网络和节点数目的。我们也是通过添加NED文件来部署我们的节转载 2020-12-03 11:09:51 · 3906 阅读 · 4 评论