精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

如何跨過使用Docker網絡解決方案Weave遇到的“坑”?

開發 開發工具
由于ODP功能與內核相關模塊結合較為緊密,因此在實際使用中可能會遇到一些與內核相關的“坑”。本文描述的這兩個問題都跟內核有關系。

前言

Weave作為Docker(一個開源的應用容器引擎)跨主機集群網絡解決方案的一種,可以用于連接部署在多臺主機上的Docker容器,使用網絡的應用程序不必去配置端口映射、鏈接等信息。另外,Weave的通信支持加密,用戶可以從一個不受信任的網絡連接到主機。

Weave在控制層和Calico類似,在數據層通過UDP封裝實現L2 overlay。Weave在1.2 版本之前都是通過usersapce實現,在Weave-1.2版本之后,Weave結合了內核Open vSwitch模塊,實現了Open vSwitch datapath(ODP)功能,結合kernel的vxlan特性,在網絡性能上有較大提升。

由于ODP功能與內核相關模塊結合較為緊密,因此在實際使用中可能會遇到一些與內核相關的“坑”。本文描述的這兩個問題都跟內核有關系。

坑一:使用Weave FastDb造成虛擬機網絡中斷

1. 問題描述

在Weave的1.2版本之后,考慮到原先sleeve模式網絡性能較差,故增加FastDb模式,該模式也成為Weave啟動時的默認模式。在FastDb模式中使用了kernel中的Open vSwitch模塊,做報文封裝時使用vxlan協議。在使用qemu-kvm創建的云主機上,如果安裝centos7.0,內核版本為kernel-3.10.123,那么在啟動Weave并使用FastDb模式時,會造成virtio_net虛擬網卡無法發送數據,進而導致整個虛擬機的網絡中斷。

問題分析導致網絡斷開的原因是由于觸發了內核的一個bug,該內核bug的commit鏈接地址:https://git.kernel.org/cgit/linux/kernel/git/stable/linux-stable.git/commit/?id=8a0cafc9a8131cc545dc9924aed38f7176ee4ad7 (網址過長,可輸入http://t.cn/Ro53BsH 查看)

觸發該bug主要是因為Weave在初始化時會發送一個60000字節的UDP數據包進行PMTU探測,并且 Weave發送使用的套接字為raw socket,導致virtio_net使用的內存被污染,具體表現就是無法通知到宿主機上vhost獲取數據,在接口上看到發送報文的計數始終不會增加。

該問題不是只有Weave才能觸發,用普通應用程序建立socket時使用raw socket,并且發送的數據大于接口的MTU值,接口的UFO功能是打開的,這些情況下都極有可能觸發該問題,造成網絡中斷。

FastDb模式的數據流原理

(圖:FastDb模式的數據流原理)

2. 解決方法

1)升級內核,保證內核版本大于等于3.13;

2)關閉虛擬機網卡的ufo特性;

3)centos7.1的kernel-3.10.229內核已經修復了該問題。

guest通知vhost讀取數據流程

(圖:guest通知vhost讀取數據流程)

坑二:Weave無法使用FastDb模式

1. 問題描述

在內核版本CentOS Linux (3.10.0-327.10.1.el7.x86_64) 7 (Core)上 ,Weave版本大于1.2,如果云主機的MTU值為1450或者小于1474,Weave啟動時無法正常選擇Fast Data Path模式。在Weave啟動后一直選擇sleeve模式,本應該默認模式為FastDb,該問題也和內核的版本相關。

2. 問題分析

Weave的Fast Data Path路徑使用到ODP技術,也就是內核中的OVS模塊,在Container中直接發送數據包到ovs模塊。在啟動Weave時,會自動選擇使用sleeve模式還是FastDb模式,這里通過發送心跳包來決定。出現該問題時,在云主機通過Docker logs Weave日志可以看到出錯信息:FastDb timed out waiting for vxlan heartbeat。

heartbeat數據包是一個UDP包,目的端口號為6784,在某些云主機上接口的MTU值為1454,但在發送UDP的heartbeat數據包時,發送的是1474字節,這樣就會對報文在IP層進行分片,而在主機上發現心跳報文發送不出去,當MTU的值修改為1500后,就可以發送出去。

在MTU為1454的情況下,會出現下面的ICMP錯誤報文。

出現的錯誤ICMP報文

(圖3: 出現的錯誤ICMP報文)

上面出現錯誤的ICMP報文是內核中的ip_fragment函數調用ICMP_send函數發送的,

  1. if (unlikely(((iph->frag_off & htons(IP_DF)) && !skb->ignore_df) || 
  2.                    (IPCB(skb)->frag_max_size && 
  3.                     IPCB(skb)->frag_max_size > mtu))) { 
  4.               IP_INC_STATS(dev_net(dev), IPSTATS_MIB_FRAGFAILS); 
  5.               ICMP_send(skb, ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED, 
  6.                        htonl(mtu)); 
  7.               kfree_skb(skb); 
  8.               return -EMSGSIZE; 
  9.        } 

通過上述代碼可以看出,如果出現錯誤ICMP報文,下面的判斷條件iph->frag_off & htons(IP_DF)) && !skb->ignore_df 需要成立。通過對抓取的報文分析可知iph->frag_off & htons(IP_DF))的值為真,那么skb->ignore_df值需要為0,而此處的關鍵在于skb->ignore_df的值是何時賦值為0的。

通過分析Weave發送心跳包的流程可知,在vxlan_tnl_send函數中,對skb->ignore_df賦值為1,***調用tunnel的發送函數iptunnel_xmit時,調用了skb_scrub_packet函數,在該函數中又重新對skb->ignore_df賦值為0(kernel版本為:3.10.0-327.el7),造成后續發送報文時,ICMP目的不可達,并且錯誤碼為ICMP_FRAG_NEEDED的報文。

  1. void skb_scrub_packet(struct sk_buff *skb, bool xnet) 
  2.         skb->tstamp.tv64 = 0
  3.         skb->pkt_type = PACKET_HOST
  4.         skb->skb_iif = 0
  5.          skb->ignore_df = 0
  6.          skb_dst_drop(skb); 
  7.          secpath_reset(skb); 
  8.          nf_reset(skb); 
  9.          nf_reset_trace(skb); 
  10.          if (!xnet) 
  11.                  return; 
  12.          skb_orphan(skb); 
  13.          skb->mark = 0

上面代碼是centos7的3.10.0-327.el7,而在一些舊內核版本3.10.0-123.el7上,iptunnel_xmit調用的是secpath_reset(skb)函數,該函數并沒有對skb->local_df(低版本內核使用local_df)進行重新初始化,也就是skb->local_df值仍舊為1,因此在該版本上不會出現上述問題。

  1. static inline void 
  2. secpath_reset(struct sk_buff *skb) 
  3. #ifdef CONFIG_XFRM 
  4.         secpath_put(skb->sp); 
  5.         skb->sp = NULL
  6. #endif 

內核版本不同造成設置不同

(圖:內核版本不同造成設置不同)

雖然新的內核版本中存在該問題,不過內核本身沒有問題,還是Weave用戶態管理datapath程序與內核適配上出現問題(它并不是使用ovs-switchd),在OVS中對tunnel類型可以設置為df_default=false進行分片。

解決方法

保證接口的MTU值為默認為1500。

總結

Weave的ODP功能使用了內核特性,在使用Weave的FastDb功能時遇到上述兩個問題都與內核密切相關。通過對內核層分析,可以定位到問題的根本原因,所以后續遇到類似問題時,可以多從內核角度進行考慮。

【本文是51CTO專欄機構作者“大U的技術課堂”的原創文章,轉載請通過微信公眾號(ucloud2012)聯系作者】

 戳這里,看該作者更多好文

責任編輯:趙寧寧 來源: 51CTO專欄
相關推薦

2017-08-01 05:44:10

Dockerweave虛擬機

2015-12-02 15:35:08

Redis Clust遷移解決方案

2024-06-24 00:30:00

2019-12-05 08:44:20

MybatisSQL場景

2021-08-31 07:57:21

輪詢鎖多線編程Java

2021-10-18 07:58:33

MyBatis Plu數據庫批量插入

2009-02-19 10:13:00

2009-10-19 17:30:45

智能網絡布線解決方案

2010-12-24 12:49:39

2017-08-03 09:37:35

SparkStreamKafkaDirect

2018-08-09 05:40:27

SD-WANWAN廣域網

2020-09-02 07:34:15

NDR網絡檢測和響應網絡安全

2021-09-06 13:45:21

數據驅動大數據SaaS

2009-10-27 15:35:08

2022-07-13 15:03:23

網絡安全數據安全遠程工作

2013-05-13 10:03:04

git

2023-04-14 14:14:52

物聯網IoT

2023-02-03 17:10:55

物聯網智能停車

2017-05-11 17:11:13

SDNOpenFlow網絡

2022-11-08 14:17:39

點贊
收藏

51CTO技術棧公眾號

日韩精品在线播放视频| 日本一区高清在线视频| 国产一级视频在线观看| 亚洲精华一区二区三区| 精品视频1区2区| 日韩国产小视频| 久久久久久女乱国产| 国产在线一区二区综合免费视频| 高清亚洲成在人网站天堂| 新91视频在线观看| 日本在线成人| 欧美亚洲一区二区在线观看| 久青草视频在线播放| 国产一二在线观看| 成人网在线免费视频| 国产精品色午夜在线观看| 国产第一页在线播放| 精品国产乱码久久久久久果冻传媒| 日韩欧美一级精品久久| 亚洲三级视频网站| 日韩大片免费观看| 一区二区久久久| 无遮挡亚洲一区| 天堂资源中文在线| 成人午夜电影网站| 亚洲自拍偷拍色片视频| 中文字幕在线播出| 六月婷婷一区| 97视频色精品| 妺妺窝人体色www聚色窝仙踪 | 国产综合av一区二区三区| 懂色av蜜臀av粉嫩av喷吹| 亚洲一区二区三区高清不卡| 九色精品美女在线| 欧美手机在线观看| 成人在线免费小视频| 亚洲男子天堂网| 在线免费看黄色片| 国产成人tv| 日韩欧美成人激情| 日韩欧美色视频| 9999精品| 日韩一二三区视频| 激情成人在线观看| 国产精品国产亚洲精品| 欧美人体做爰大胆视频| 在线免费av播放| 亚洲一区二区三区四区| 色av一区二区| 成人在线观看a| www.com.cn成人| 日韩欧美一区二区三区| 99福利在线观看| 345成人影院| 欧美性高潮在线| 久久久999视频| av综合电影网站| 一本久久综合亚洲鲁鲁五月天| 国产黄页在线观看| 成人av三级| 欧美这里有精品| 嫩草影院国产精品| 日韩一级视频| 日韩一区二区麻豆国产| jjzz黄色片| 日本在线中文字幕一区| 亚洲欧美日韩精品久久亚洲区 | 天天躁日日躁成人字幕aⅴ| 亚洲国产精彩中文乱码av在线播放| 性囗交免费视频观看| 亚洲男人都懂第一日本| 一区二区三区视频在线| 顶级黑人搡bbw搡bbbb搡| 亚洲精品国产成人影院| 欧美日韩国产成人在线观看| 黄色大片网站在线观看| 老司机精品福利视频| 国产精自产拍久久久久久蜜| av免费在线不卡| 99精品在线观看视频| 日韩久久久久久久| 伊人手机在线| 狠狠久久五月精品中文字幕| 另类小说第一页| 激情视频亚洲| 日韩av一区二区在线| 永久免费av无码网站性色av| 亚洲香蕉av| 91成人国产在线观看| 中文字幕乱伦视频| 国产成人综合自拍| 日本成人三级电影网站| 高h视频在线观看| 欧美性生交大片免费| 久久人人爽av| 美女视频亚洲色图| 久久人人爽亚洲精品天堂| 日韩特黄一级片| 久久国产福利国产秒拍| 久久另类ts人妖一区二区| 1区2区3区在线观看| 一区二区久久久久| 久久久久久久久久久久91| 91综合久久爱com| 精品视频—区二区三区免费| 成人免费精品动漫网站| 久久99伊人| 亚洲bt天天射| jizz在线观看中文| 精品久久久国产精品999| 看看黄色一级片| 亚洲精品进入| 欧美激情在线观看视频| 亚洲特级黄色片| 99精品欧美一区二区三区小说| 伊人天天久久大香线蕉av色| 中文字幕在线免费观看视频| 7777精品伊人久久久大香线蕉的| 免费在线观看污| 亚洲成人中文| 91精品天堂| 视频免费一区| 欧美少妇一区二区| 中文字幕免费看| 激情欧美一区二区三区| 92看片淫黄大片看国产片| wwwww在线观看免费视频| 懂色aⅴ精品一区二区三区蜜月| 性色av浪潮av| 婷婷激情综合| 国产精品视频最多的网站| 欧洲一级在线观看| 黄色成人av网| 女同性恋一区二区三区| 亚洲午夜精品久久久久久app| 成人免费自拍视频| 国产视频福利在线| 色婷婷综合激情| 女尊高h男高潮呻吟| 99精品视频免费| 国内精品久久国产| 交100部在线观看| 亚洲黄色片网站| 亚洲精品77777| 不卡视频一二三| 欧美 丝袜 自拍 制服 另类| 成人影院中文字幕| 性欧美暴力猛交69hd| 六月婷婷综合网| 亚瑟在线精品视频| 亚洲综合自拍网| 亚洲综合三区| 日韩国产欧美一区| 国产91精品在线| 日韩视频免费观看| a级片免费视频| 亚洲一区二区三区视频在线| 国产高清成人久久| 在线视频精品| 日本在线成人一区二区| 黄色精品视频| 久久精品99久久香蕉国产色戒| 欧美激情一区二区三区免费观看| 国产精品久久综合| 亚洲AV无码久久精品国产一区| 99精品视频在线观看播放| 92福利视频午夜1000合集在线观看| 羞羞污视频在线观看| 日韩av中文在线| 亚洲永久精品一区| 亚洲欧美另类久久久精品| 亚洲最大视频网| 午夜亚洲影视| 影音先锋欧美资源| 成人福利免费在线观看| 欧美在线视频网| 五月婷婷在线观看| 欧美成人猛片aaaaaaa| 一区二区三区福利视频| 国产免费观看久久| 韩国三级在线播放| 日韩精品福利网| 国产一二三四五| 中国av一区| 91网站免费观看| 免费毛片b在线观看| 中文字幕亚洲色图| 欧美一级性视频| 欧美视频完全免费看| 久久97人妻无码一区二区三区| 99re这里只有精品首页| 免费一级特黄录像| 伊人久久亚洲热| 五码日韩精品一区二区三区视频| 中文字幕区一区二区三| 国产极品精品在线观看| 日本孕妇大胆孕交无码| 亚洲天堂男人的天堂| 亚洲高清在线观看视频| 欧美亚洲国产一区二区三区| 精品视频一区二区在线观看| 中文字幕国产精品一区二区| 在线观看亚洲免费视频| 国产在线精品国自产拍免费| 大香煮伊手机一区| 国产一区二区三区四区老人| 亚洲国产精品www| 天天做夜夜做人人爱精品| 96国产粉嫩美女| 69堂免费精品视频在线播放| 国内精品视频久久| 18加网站在线| 最新日韩中文字幕| 国产小视频免费在线观看| 亚洲国产精品字幕| 成人1区2区3区| 欧美电影影音先锋| 久草热在线观看| 欧美性精品220| 国产乡下妇女做爰视频| 亚洲色图欧美在线| 大地资源高清在线视频观看| 久久久久久久电影| www.超碰97| www.在线成人| www.555国产精品免费| 狠狠色丁香久久婷婷综合丁香| 看欧美ab黄色大片视频免费 | 香蕉视频网站入口| 韩国精品一区二区三区| 免费日韩在线观看| 在线中文字幕第一区| 在线天堂一区av电影| 成人嫩草影院| 亚洲看片网站| 郴州新闻综合频道在线直播| 日本一区二区三区视频在线播放| 少妇久久久久| 欧美日韩亚洲一区二区三区在线观看 | 97人人在线视频| 欧美精品videos| 欧美xxx黑人xxx水蜜桃| 九九精品视频在线观看| 最新av在线播放| 久久五月情影视| 在线观看午夜av| 欧美国产乱视频| caoporn-草棚在线视频最| 韩国欧美亚洲国产| 亚洲精品午夜久久久久久久| 久久久久免费av| 亚洲一区二区不卡视频| 日韩午夜电影网| 中文字幕在线亚洲精品| 亚洲成人免费| www.九色.com| 亚洲一区成人| 三级视频中文字幕| 极品少妇xxxx精品少妇偷拍| 红桃视频 国产| 国产精品一品视频| 999精品免费视频| 久久久高清一区二区三区| 日本人亚洲人jjzzjjz| 一区在线观看视频| 久久久久久久国产视频| 大荫蒂欧美视频另类xxxx| 伊人成年综合网| 777色狠狠一区二区三区| 亚洲精品久久久久久久久久| 日韩成人在线视频| av在线免费一区| 欧美精品在线第一页| 日韩伦理在线| 国产欧美一区二区三区视频| 玖玖精品一区| 久久综合婷婷综合| 日韩啪啪电影网| 国产 日韩 欧美在线| 日韩av中文在线观看| 中文字幕一区二区在线观看视频| 成人久久18免费网站麻豆 | 国产97色在线 | 日韩| 免费久久精品视频| 久久国产免费视频| 国产视频一区在线播放| 九九热最新地址| 色视频一区二区| 亚洲高清精品视频| 一区二区三区动漫| 国产精品国精产品一二| 国产精品视频资源| 欧美久久香蕉| 特级黄色录像片| 久久xxxx精品视频| gogo亚洲国模私拍人体| 久久久久亚洲蜜桃| 国产一级视频在线播放| 欧美日韩国产影片| 亚洲色欧美另类| 欧美精品在线看| 电影亚洲一区| 精品久久精品久久| 中文乱码免费一区二区三区下载| 亚洲爆乳无码专区| 成人激情午夜影院| 免费黄色激情视频| 色诱视频网站一区| 免费看日韩av| 美女精品久久久| 久久亚洲国产精品尤物| 久久久久久久久一区二区| 午夜日韩在线| 97人人爽人人| 国产午夜亚洲精品不卡| 色婷婷在线观看视频| 日韩一二三区视频| 操你啦视频在线| 国产日本欧美一区二区三区在线| 亚洲伊人春色| 777777av| 成人av动漫在线| 久久视频免费看| 精品免费视频一区二区| 免费av在线网址| 国产美女被下药99| 国产一区二区三区站长工具| 亚洲熟妇av一区二区三区漫画| 丰满亚洲少妇av| 免费一级a毛片夜夜看| 666欧美在线视频| 欧美猛烈性xbxbxbxb| 国产精品国产三级国产aⅴ浪潮| 窝窝社区一区二区| 欧美色图色综合| 99久久精品国产一区二区三区| 国产一级视频在线播放| 欧美va亚洲va香蕉在线| 亚洲第一图区| 国产精品swag| 亚洲黄色影院| 亚洲调教欧美在线| 欧美性猛交xxxx免费看| 久久久pmvav| 国产精品免费网站| 欧美韩日一区| www.com久久久| 亚洲男人的天堂av| wwwav网站| 久久欧美在线电影| 欧洲亚洲一区二区三区| 激情网站五月天| 国产日韩精品一区| 国产又爽又黄免费软件| 久久久www成人免费精品| 久久综合给合| 99视频在线免费播放| 久久色成人在线| 国产精品51麻豆cm传媒| 久久亚洲精品一区二区| 日韩精品一级| 日韩国产欧美亚洲| 国产视频一区在线观看 | 亚洲第一福利在线观看| 这里有精品可以观看| 视频一区国产精品| 国产专区综合网| 日本熟妇成熟毛茸茸| 亚洲人成在线观看| 日韩深夜福利网站| 草草视频在线免费观看| 久久久久久久久久看片| 亚洲无码精品国产| 欧美精品18videos性欧美| 亚洲精品播放| 国产5g成人5g天天爽| 亚洲成人一区在线| 成人午夜在线观看视频| 96sao精品视频在线观看| 国产亚洲综合精品| 又嫩又硬又黄又爽的视频| 日韩欧美国产一区二区三区| 午夜久久中文| 在线视频精品一区| 99国产精品国产精品毛片| 在线视频精品免费| 久久久久久久久久久成人| 欧美日韩国产一区二区三区不卡| 欧美视频亚洲图片| 色菇凉天天综合网| 污污视频在线看| 日韩免费一区二区三区| 国产精品123| 中文在线免费观看| 久久久久久久91| 婷婷综合激情| 日韩av一二区| 日韩欧美一级二级三级| 成人mm视频在线观看| 5月婷婷6月丁香|