- 博客(15)
- 收藏
- 关注
原创 VLAN发包流程
vlan->vlan_proto表示还没有插vlan头,vlan->flags & VLAN_FLAG_REORDER_HDR这个标识位是在注册vlan设备时候就设定的,可以看我的上一篇文章,计算vlan_tci,调用__vlan_hwaccel_put_tag设置需要添加的头部信息,修改发出设备为实际发出设备,然后调用dev_queue_xmit发包。vlan_hw_offload_capable判断协议是否是ETH_P_8021Q,硬件是否打开了NETIF_F_HW_VLAN_CTAG_TX。
2023-12-01 10:06:01
1447
1
原创 VLAN驱动注册流程
采用vconfig add eth1 100增加一个vlan的时候,会到case ADD_VLAN_CMD,调用register_vlan_device创建一个vlan设备。可以看到.ndo_start_xmit 注册为vlan_dev_hard_start_xmit,这也是vlan发包的函数。vlan_setup(vlan_dev.c中)函数中注册了vlan_netdev_ops。
2023-12-01 09:32:33
587
1
原创 linux系统配置双层VLAN(QinQ)
然后 enp3s0.100.200找到对应发出设备 enp3s0.100, enp3s0.100封第二层vlan头(在第一层上面),VLAN id100。采用vconfig add enp3s0.100 200搭建第二个vlan ,搭建后出现接口 enp3s0.100.200 , enp3s0.100.200 对应的dev为 enp3s0.100。采用vconfig add enp3s0 100 搭建第一个vlan ,搭建后出现接口enp3s0.100,enp3s0.100对应的dev为enp3s0。
2023-11-30 17:53:48
1034
1
原创 2021-09-15
力扣刷题第217题 存在重复元素 c语言https://blog.youkuaiyun.com/zhao888789/article/details/79186619C语言qsort函数用法先排序再比较不然会超时int cmp_int(const void *_a,const void*_b){ int *a=(int*)_a; int *b=(int*)_b; return *a-*b;}bool containsDuplicate(int* nums, int numsSi
2021-09-15 20:19:11
127
原创 力扣724题 寻找数组的中心下标 c语言
力扣724题 寻找数组的中心下标 c语言很简单维护一个指针就行int pivotIndex(int* nums, int numsSize){ int sumleft=0; int sumright=0; int i; int t; t=-1; for(i=1;i<numsSize;i++){ sumright+=nums[i]; } for(i=0;i<numsSize;i++){ if(sumleft==s
2021-09-02 11:34:32
245
原创 # 力扣第六题z字形变换 c语言
力扣第六题z字形变换 c语言一个标志方向的变量一个存放他在第几行的数组到首行和末行反向char * convert(char * s, int numRows){if(numRows==1){ return s;}int way=1;int len=strlen(s);int temp[len];int i=0;int row=1;for(i;i<len;i++){ temp[i]=row; if(row==numRows) {
2021-09-02 11:29:50
170
原创 力扣35题搜索插入位置 c语言
力扣35题搜索插入位置 c语言二分法,边界考虑清楚int searchInsert(int* nums, int numsSize, int target){ int left = 0, right = numsSize- 1, ans = numsSize; while (left < right) { int mid = ((right - left+2)/2) + left-1; if (target <=
2021-09-02 11:28:31
217
原创 力扣刷题--第五题最长回文子串 c语言
力扣刷题–第五题最长回文子串 c语言https://blog.youkuaiyun.com/zw6161080123/article/details/80639932先学习一下动态规划,
2021-09-01 17:29:06
198
原创 力扣刷题---第四题 寻找两个正序数组的中位数c语言
力扣刷题—第四题 寻找两个正序数组的中位数c语言http://c.biancheng.net/c/if_else/if else语句,C语言if else用法完全攻略先复习一下if语句二分法做的自己在co’de’block上跑一点问题没有,在力扣上编译不通过,来个大佬给我看看哭了先附上正确答案链接https://blog.youkuaiyun.com/fuyuande/article/details/97007200?utm_medium=distribute.pc_relevant.none-tas
2021-09-01 10:18:36
259
原创 力扣刷题---第三题 无重复字符的最长子串c语言
力扣刷题—第三题 无重复字符的最长子串c语言https://blog.youkuaiyun.com/zhongguozhichuang/article/details/53196415队列(queue)原理
2021-08-27 11:46:36
371
原创 力扣刷题---第二题俩数相加c语言
力扣刷题—第二题俩数相加暴力相加不可以,直接用加法公式/** * Definition for singly-linked list. * struct ListNode { * int val; * struct ListNode *next; * }; */struct ListNode* addTwoNumbers(struct ListNode* l1, struct ListNode* l2){struct ListNode* result=(struct
2021-08-26 10:56:40
311
原创 力扣刷题---第一题俩数之和c语言
力扣刷题—第一题俩数之和c语言遇到bug先看看下面几篇文章https://blog.youkuaiyun.com/weibo1230123/article/details/81449593指针数组、数组指针、数组的区别与联系!https://blog.youkuaiyun.com/cherrydreamsover/article/details/81741459?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMa
2021-08-25 22:01:27
823
原创 Error loading stopwords: <urlopen error [Errno 111]
运行import nltknltk.download(‘stopwords’)报错Error loading stopwords: <urlopen error [Errno 111]网上找到的全部解决方案(1)https://www.cnblogs.com/douzujun/p/13032304.html手动下载stopwords包,尝试以后无果(2)添加链接描述注意到网址前方带红色斜杠的小锁,点开小锁–>向右的箭头–>更多信息(见下方第二张图)发现错误原因:网页权限不
2020-10-20 11:26:32
3377
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人