版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
分布式存儲技術(shù)與產(chǎn)業(yè)分析報告1分布式存儲技術(shù)與產(chǎn)業(yè)分析報告1開放數(shù)據(jù)中心標準推進委員會版權(quán)聲明ODCC(開放數(shù)據(jù)中心委員會)發(fā)布的各項成果,受《著作權(quán)法》保護,轉(zhuǎn)載、摘編或利用其它方式使用ODCC成果中的文字或者觀點的,應注明對于未經(jīng)著作權(quán)人書面同意而實施的剽竊、復制、修改、銷售、改編、匯編和翻譯出版等侵權(quán)行為,ODCC及有關(guān)單位將追究其法律責任,感謝各單位I編制說明本白皮書在撰寫過程中得到了多家單位的大力支持,在此特別感謝以下參):中國信通院(云大所)、阿里、騰訊、百度、美團、京東、中國移動研究):湯明、譚海洋、尹雙雙、李兆耕、龔志敏、王佩龍、黃淮、李力,董玢,劉松林、金可、李志強,姚柯翰、蔣星、茅新民、萬俊君、徐志駿、李嘉明、周剛、康海濤、丁曉燕、孫金超、胡波,袁永前言r4可編程領域現(xiàn)狀P4網(wǎng)絡可編程技術(shù)已經(jīng)成為業(yè)界廣泛使用的一可編程芯片技術(shù)的應用在各大互聯(lián)網(wǎng)公司也已逐步承載海量業(yè)務流量,在解決P4網(wǎng)絡可編程技術(shù)以其開放,透明,生態(tài)等特點吸引眾多學術(shù)界和工業(yè)界),司等都紛紛入場,圍繞P4可編程的各種應用,更是百花齊圖1P4可編程生態(tài)隨著超大型數(shù)據(jù)中心云,分布式小型云為代表的不同場景的網(wǎng)絡應用,網(wǎng)一是以超大型數(shù)據(jù)中心為代表的中心云,其核心訴求通常是高帶寬,低時二是以小規(guī)模數(shù)據(jù)中心為代表的邊緣云,其核心訴求通常是低成本,功能圖2小規(guī)模數(shù)據(jù)中心在大型數(shù)據(jù)中心中,服務器規(guī)模通常可達上萬臺,多種網(wǎng)元功能角色(各種網(wǎng)元如SLB,NAT,SWITCH等等)通常分布體銜接通過網(wǎng)絡架構(gòu)的方式連接起來。由于服務器規(guī)模較大,網(wǎng)絡整體的成本消耗占比通常很小,通??梢院雎?,通過網(wǎng)絡架構(gòu)的設計保障了網(wǎng)絡的高效協(xié)但在小型數(shù)據(jù)中心中,服務器規(guī)??赡苄≈翈资_。如果仍然采用復雜的物理網(wǎng)絡架構(gòu)將分散的網(wǎng)元功能協(xié)同在一起,網(wǎng)絡的整體成本消耗占比會非常高,甚至可能出現(xiàn)一個節(jié)點總成本中有一半以上在處理網(wǎng)絡消耗。而小型數(shù)據(jù)中心通常節(jié)點眾多,使得這一問題越發(fā)嚴峻,成為不可忽視的問題,業(yè)界急需隨著各大公司對P4可編程芯片技術(shù)的深入研究和大生態(tài)體系,一種新型的超融合網(wǎng)關(guān)技術(shù)應運而生,P4超融合網(wǎng)關(guān)技術(shù)旨在通過圖3超融合網(wǎng)關(guān)本文由多家知名公司合力編寫,將分別從單體網(wǎng)元維度,超融合網(wǎng)關(guān)融合場景應用維度,測試維度,以及P4變成通道等方面分別闡述P4超融合網(wǎng)關(guān)技VP4超融合網(wǎng)關(guān)技術(shù)白皮書 I II III 1 1 1 2 2 2 3 8 8 8 10 12 12 12 12 16 16 16P4超融合網(wǎng)關(guān)技術(shù)白皮書 17 18 18 19 20 27 27 28 31 38 38 39 41 46 46 46 47 48 52 53 53 56 68P4超融合網(wǎng)關(guān)技術(shù)白皮書 68 69 70 70 70 71 71 74 75 76 76 76 78 79 792.P4ORCH(newinSWSSc 793.APPLStateDBandResp 804.SAI-P4-extension(newinASICDB)–Intelisworkingon 80 86 87 87 88P4超融合網(wǎng)關(guān)技術(shù)白皮書下列文件對于本文件的應用是必不可少的。凡是注日期的引用文件,僅注日期的版本適用于本文件。凡是不注日期的引用文件,其最新版本(包括所有P4語言編程規(guī)范/p4lang/p4-spec/tree/master/p4-單體網(wǎng)元:實現(xiàn)特定網(wǎng)絡特定功能的一個單元,如SWITCH,SLB,NAT,EIP,防火墻,專線接入,網(wǎng)絡流量分析,網(wǎng)絡流量限速,流量加解密,OVS等,每超融合網(wǎng)關(guān):通常在一臺設備實體上,會包含多個單體網(wǎng)元,同時提供多FPGA:一種半定制可編程器件,本文中通常用1負載均衡器的作用是按照特定的調(diào)度策略將網(wǎng)絡流量以連接為粒度分發(fā)到一組后端服務器上。負載均衡器的實現(xiàn)方案主要分為兩類:有狀態(tài)負載均衡器和無狀態(tài)負載均衡器。無狀態(tài)負載均衡器通常需要實現(xiàn)一致性哈希算法以確保在后端服務器列表變更的情況下實現(xiàn)一致性調(diào)度(即同一個連接調(diào)度給同一個后端服務器但難以支持靈活的調(diào)度算法。有狀態(tài)負載均衡器則通過維護session表記錄連接的調(diào)度狀態(tài)以保證一致性調(diào)度,能夠支持多種調(diào)度算法,功能更加靈活。此外,負載均衡器還有多種工作模式,如FULLNAT模式、DR模式、Tunnel模式等。以下我們以Tunnel模式下的有狀態(tài)負載均衡器為例,說session。根據(jù)用戶配置的調(diào)度算法從后端服務器列表中調(diào)度一臺后端服務器,(2)session查找和包處理:該連接后續(xù)的包到來之后,在session表中查到session,然后按照session里記錄的action執(zhí)行數(shù)據(jù)包處理和轉(zhuǎn)發(fā)(3)session結(jié)束和刪除:收到TCP斷連報文(FIN/RST)之后,觸發(fā)session正常結(jié)束和刪除。對于無法識別到),其中2)可以在可編程交換芯片上使用P4實現(xiàn),但是(1)和(3)目2合ServerSwitch,指的是將Serv圖4超融合ServerSwitch):件LB進行session的新建,硬件上無法處理的報文也是上送給軟件LB處理。session表項的新建和刪除。軟件LB通過調(diào)用SessionOffloadEngine的接口3P4超融合網(wǎng)關(guān)技術(shù)白皮書報文被轉(zhuǎn)發(fā)給軟件LB,軟件LB執(zhí)行調(diào)度、新建session并對數(shù)據(jù)包進行SessionOffloadEngine調(diào)用交換芯片SDK將新建session下發(fā)到硬件session表。如果數(shù)據(jù)包未觸發(fā)新建session,則無需下發(fā)給硬件。下發(fā)報文從可編程交換芯片接口輸入,匹配硬件session表,查找成功,執(zhí)行報文從可編程交換芯片接口輸入,進入session表模塊報文被轉(zhuǎn)發(fā)給軟件LB,軟件LB根據(jù)FIN/RST標記修改session狀態(tài)和超4//默認action:上送給主機慢路徑actionforward_to_slow_path(ig_md.forward_action=FORWARD_TO_SLOW_PATH;)//快路徑action:封裝隧道頭,轉(zhuǎn)發(fā)給后端服務器actionforward_to_real_server(ipv4_addr_tlocal_ip,ipv4_addr_treal_server_ip){//添加隧道頭,這里以IPIP隧道舉例說明hdr.outer_ipv4.setValid();hdr.outer_ipv4.version=4w4;hdr.outer_ipv4.ihl=4w5;hdr.outer_tocol=IP_PROTOCOLS_IPIhdr.outer_ipv4.total_len=hdr.ipv4.total_len+16w20;hdr.outer_ipv4.src_addr=local_ip;hdr.outer_ipv4.dst_addr=real_server_ip;ig_md.forward_action=FORWARD_TO_REAL_SERVER;5}//硬件session表定義tablesession_table{//session表的key是五元組key={hdr.ipv4.src_addr:exact;hdr.ipv4.dst_addr:exact;tocol:exact;ig_md.l4_src_port:exact;ig_md.l4_dst_port:exact;}//session表的action類型actions={forward_to_real_server;@defaultonlyforward_to_slow_path;}}//session表的執(zhí)行邏輯//匹配session表6session_table.apply//判斷報文是否是TCP建連或斷連報文if(ig_md.pkt_type==PKT_TYPE_TCP){if((hdr.tcp.flags&TCP_FLAG_SYN)==TCP_FLAG_SYN||(hdr.tcp.flags&TCP_FLAG_FIN)==TCP_FLAG_FIN||(hdr.tcp.flags&TCP_FLAG_RST)==TCP_FLAG_RST){//將建連和斷連報文上送給主機慢路徑ig_md.forward_action=FORWARD_TO_SLOW_PATH;}}}7過路由器或防火墻時重寫源IP地址或目的IP地址的技術(shù)。主要用來解決:NAT可以按地址轉(zhuǎn)換的對象是對源地址還是目的地NAT和雙向NAT。而源NAT中,根據(jù)是否對源端口號進行轉(zhuǎn)換,可以被細化為向NAT是源NAT和目的NAT的組合,其主要針對同一條流,在該流經(jīng)過設備時NAT網(wǎng)元的應用場景有:通過互聯(lián)網(wǎng)網(wǎng)關(guān)連接互聯(lián)網(wǎng),私有子網(wǎng)接入互聯(lián)網(wǎng),具有重復IP子網(wǎng)的互通,連接線下數(shù)據(jù)中心與VPC,使用允許的IP地址NAT網(wǎng)元承擔了眾多的IP映射規(guī)則,常規(guī)可編程芯片如Tofino設備沒有足夠的資源部署,因此使用XLT設備中FPGAX86等硬件,為其提供超大表項的NAT網(wǎng)元具有多種應用場景,本設計以最常見的訪問外網(wǎng)場景為例進行設8在此場景下該網(wǎng)元主要負責將內(nèi)部IP地址通過址,在邊界路由的NAT地址轉(zhuǎn)換表記錄下這個轉(zhuǎn)換映射記錄,當外部數(shù)據(jù)返回具體來說,當vm訪問外網(wǎng)客戶端產(chǎn)生一個vmip->cip的報文返回一個cip->eip(none/port/vni)的報文,該報文經(jīng)由NAT轉(zhuǎn)換為cip-NAT網(wǎng)元的概要設計架構(gòu)如圖,其在XLT中的實現(xiàn)按硬件可以劃分為三部Tofino:用片上資源實現(xiàn)NAT功能,在Tofino中主要承載大流的網(wǎng)絡地址轉(zhuǎn)換,并進行IPMAP表項中熱點規(guī)則的跟蹤統(tǒng)計,未命中的報文則重定向到9P4超融合網(wǎng)關(guān)技術(shù)白皮書CPU:實現(xiàn)完整的NAT網(wǎng)元流水線,來實現(xiàn)對于快路徑難處理或未命中報文配為新元組分配資源),并部署在FPGA或Tofino中。對FPGA和Tofino中IPMAP的命中情況進行統(tǒng)計分析,根據(jù)命中頻次實現(xiàn)FPGATofino的規(guī)則交換,核心思想為通過報文的元組信息,對特定的元組進行源或目的地址的值改Plaintextactionrewrite_ip_dst_addr(bit<32>dst_ip){hdr.ipv4.dst_addr=dst_ip;}actionrewrite_ip_src_addr(bit<32>dst_ip){hdr.ipv4.dst_addr=dst_ip;}actionrewrite_ip_dst_addr_dport(bit<32>dst_ip,bit<16>dport){hdr.ipv4.dst_addr=dst_ip;hdr.tcp.dst_port=dport;}actionrewrite_ip_src_addr_sport(bit<32>src_ip,bit<16>sport){hdr.ipv4.dst_addr=dst_ip;hdr.tcp.src_port=sport;}tablenat{key={to:exact;hdr.ipv4.dst_addr:exact;hdr.ipv4.src_addr:exact;hdr.tcp.src_port:exact;hdr.tcp.dst_port:exact;}actions={rewrite_ip_dst_addr;rewrite_ip_src_addr;rewrite_ip_dst_addr_dport;rewrite_ip_src_addr_sport;}size=NAT_TABLE_SIZE}}內(nèi)IP地址,并封裝所屬VPC的vni構(gòu)造overlayvxlan報文轉(zhuǎn)發(fā)至對應的VPC出公網(wǎng)方向overlayvxlan報文匹配vni和內(nèi)層源IP地址,解封裝P4超融合網(wǎng)關(guān)技術(shù)白皮書}}}}}}}}eip_to_vpc();eip_to_vpc_v6();替換目的IP后,進行hdr.vxlan.setValid(),對相應VXLAN報文的各字通過BGP或OSPF協(xié)議等價路由發(fā)布NC_IP對應32位掩碼路由,引流出方向VXLAN報文。根據(jù)IPV4/IPV6協(xié)議分別匹配對應源IP和VNI,轉(zhuǎn)換為}hdr.vxlan.vni:exact;}}}actionset_vpc_eip_v6(bit<}hdr.vxlan.vni:exact;}}}P4超融合網(wǎng)關(guān)技術(shù)白皮書vpc_to_eip_v6();替換源IP后,進行hdr.vxlan.setInvalid(),計算校驗和后發(fā)出,常規(guī)一個是公網(wǎng)入方向:eip/eip_v6->vni+vpcinn一個是公網(wǎng)出方向:vni+vpcinnerip/inneripMFW是美團的內(nèi)外網(wǎng)防火墻,主要做四七層的流量安全控制,東西向流量有上TB,通常需要幾十臺X86架構(gòu)服務器,不僅成本高,而且還占用核心接入?yún)^(qū)的交換機網(wǎng)口。所以需要一種通用的高吞吐的網(wǎng)元,降低成本的同時,又能P4超融合網(wǎng)關(guān)技術(shù)白皮書多功能防火墻,四層主要是通過五元組來過濾,七層主要是通過大概有以下部分組成:協(xié)議棧;初始化向knet中添加host接口;并且設//根據(jù)芯片的不同,防火墻這部分的操作方式可能有所不同,以下以actionset_fwd_port(fw_md.out_port=port;}}set_fwd_port;NoAction;}}控制層上,主要完成mac地址學習,路由學習等功能,流表信息更新;隨著云與虛擬化業(yè)務的快速發(fā)展,數(shù)據(jù)中心網(wǎng)絡對于租戶業(yè)務的隔離以及租戶VPN的可擴展性要求日益增高。VXLAN作為數(shù)據(jù)中心網(wǎng)絡虛擬化Overlay并通過第三層基礎設施(underlay)網(wǎng)絡實現(xiàn)跨數(shù)據(jù)中心乃至跨城域網(wǎng)的路由交網(wǎng)絡實例,VirtualNetworkInstance)ID,滿足數(shù)據(jù)中心大二層VM遷移和多租戶的可擴展性需求。VXLAN在入口的VTEP(VXLANtunnelendpoint)設備將以太網(wǎng)幀封裝上VXLANUDP包頭,并使用正常的IP路由和轉(zhuǎn)發(fā)機制將封裝的數(shù)據(jù)包通過底層網(wǎng)絡傳輸?shù)竭h端VTEP,再根據(jù)VXLAN的包頭信息完成解封裝后,實現(xiàn)二下圖顯示了VXLAN數(shù)據(jù)包格式。該數(shù)據(jù)包具有8字節(jié)VXLAN包頭、UDP包為了簡化起見本章節(jié)只針對完成VXLAN報文轉(zhuǎn)發(fā)所需要封裝的核心字段進入口VTEP設備工作流程,P4程序按照以下流程完成所需信息的查找和報流程TableKeyAction說明1vxlan_nh_attributespd.nh_id:exactset_vxlan_tu使用”vxlannexthopid”查表結(jié)果獲得vxlantunnelID2vrf_mappping_vni_tablepd.vrf_id:exact;pd.vxlan_tunnel_id:exact;set_vni_encap使用“vrfID”和“vxlantunnelid”共同vxlanVNI3vxlan_tunnl_attributespd.vxlan_tunnel_id:exactset_vxlan_ip_encap“vxlantunnelid”查表結(jié)果,獲得vxlan隧道的“源IP,目的IP,TTL和下一跳ID”4nh_attributespd.nh_id:exactset_eth_dst_encap使用“下一跳ID”查表結(jié)果,獲得”L3出接口ID”和“目的MAC”信息5rt_attributesxactset_eth_src_encapID”查表結(jié)果,獲得”L3“VLAN”信息{pd.ctrl.drop=true;}}}Drop_action;}}hdr.vxlan_h.vni=vni;}tablevrf_mappping_vn}Drop_action;}constdefault_action=Drop_action;}}tablevxlan_tunnl_att}Drop_action;}constdefault_action=Drop_action;}pd.out_port=out_port;hdr.ethernet_h.dst_addr=mac;}}Drop_action;P4超融合網(wǎng)關(guān)技術(shù)白皮書}constdefault_action=Drop_action;}hdr.ethernet_h.src_addr=mac;hdr.vlan_tag_h.vid=vid;}}Drop_action;}constdefault_action=Drop_action;}if(pd.ctrl.vxlan_encap==false)retuif(pd.ctrl.drop)retuif(pd.ctrl.drop)retuP4超融合網(wǎng)關(guān)技術(shù)白皮書if(pd.ctrl.drop)retuif(pd.ctrl.drop)retu}}流程TableKeyAction說明1vxlan_tunnel_terminalhdr.ipv4.src_addr:ternary;hdr.ipv4.dst_addr:ternary;set_vxlan_使用”源地址+目的地址”查表結(jié)果獲得vxlantunnelID2vni_mapping_tablehdr.vxlan_h.vni:exact;pd.vxlan_tunnel_id使用“vxlantunnelID”查表結(jié)果,獲得OverlayvrfID.后續(xù)為根據(jù)vrfId的標準VRF查表轉(zhuǎn)發(fā)流程,略去。{pd.ctrl.drop=true;}pd.ctrl.tunnel_decap=true;}pd.ctrl.tunnel_decap=false;}tablevxlan_tunnel_t}}constdefault_action=set}}hdr.vxlan_h.vni:exact;}P4超融合網(wǎng)關(guān)技術(shù)白皮書Drop_action;}constdefault_action=Drop_action;}if(pd.ctrl.decap==false)retu}}隨著中國新基建的政策推進,作為下一代寬帶互聯(lián)網(wǎng)核心技術(shù)的SegmentRoutingv6(簡稱SRv6)正在步入技術(shù)和應用創(chuàng)新的快車道。SR網(wǎng)絡真正的智能調(diào)度優(yōu)化能力,可以讓游戲更順暢,使金融交易更加快速并避免網(wǎng)絡問題帶來的交易失敗和中斷,SRv6還可以通過將流量調(diào)度到空閑鏈路上從而提升鏈路利用率,降低網(wǎng)絡費用。SRv6已經(jīng)被越來越多的運營商、互聯(lián)網(wǎng)企足足多出來了96比特。在10跳路由器點的網(wǎng)絡場景下,部署SRv6后每條線路有效帶寬將會減少了25%。這會導致SRv6流量工程部署的場景下鏈路利用率過壓縮的工作組草案,/doc/draft-ietf-spring-srv6-srh-compression/,草案定義了SRv6包頭壓縮的兩種風格,即NEXT-C-編程實現(xiàn)的SRv6壓縮包頭的封裝與解封裝,從而實現(xiàn)邊緣數(shù)據(jù)中心與核心數(shù)據(jù)上圖是一個正常的SRv6包頭(SRH),每一個SID都需要保存相同的公共前綴,但這些相同的部分實在是多余。把SIDList中相同的公共前綴(網(wǎng)段)提取作為壓縮包頭的公共前綴塊,將NodeID和FunctionID作為壓縮Next-C-P4超融合網(wǎng)關(guān)技術(shù)白皮書可以看出經(jīng)過壓縮后的SRv6包頭大大縮短了包頭長度地址字段即可。如下圖藍色部分,標識了一個經(jīng)過5跳網(wǎng)絡節(jié)點的Next-C-SID當uSID大于6跳,只需要增加SRH即可實現(xiàn)更多的SIDList,SRH中的SID即可以采用壓縮格式,也可以用非壓縮格式,甚至支持混合編排,在獲得包頭壓縮的好處的同時,也可靈活兼容非壓縮設圖6SRv6L3VPN的P4設計使用P4可編程語言可以方便的針對L3VPN業(yè)務實現(xiàn)SRv6包頭解析、封裝SRv6Policy路徑(NEXT-C-SIDList),然后根據(jù)下一跳和出接口的信息封裝相應中間路由器接收到IPv6報文后,首先判斷是否是需要自己處理的SRv6報文。如果是需要本節(jié)點處理的報文,則判別FunctionID,如果FunctionID是uN(End),或uA(End.X),則表明本節(jié)點為中間節(jié)點,根據(jù)uN/uA執(zhí)行目標地址的出口路由器接收到IPv6報文后,首先判斷是否是需要自己處理的SRv6報文。如果是需要本節(jié)點處理的報文,則判別FunctionID,如果FunctionID是uDT4,uDT6或uDT46則表明該報文為本節(jié)點終結(jié)的L3VPN報文,根據(jù)Function////SRv6sourcepoint,{pd.ctrl.drop=true;}pd.srv6.vpn_sid_valid=vpn_sid_valid;}}Drop_action;}constdefault_action=Drop_action;}}}Drop_action;}constdefault_action=Drop_action;}pd.enc.vpn_sid=vpn_sid;}}}}pd.out_port=out_port;hdr.ethernet_h.dst_addr=mac;}}Drop_action;}constdefault_action=Drop_action;}hdr.ethernet_h.src_addr=mac;hdr.vlan_tag_h.vid=vid;}}Drop_action;}constdefault_action=Drop_action;}if(pd.ctrl.srv6_encap==false)retuif(pd.ctrl.drop)retuif(pd.ctrl.drop)retuif(pd.ctrl.drop)retu}pd.enc.push_srh=true;hdr.sr_h.sid1=pd.enc.vpn_sid;P4超融合網(wǎng)關(guān)技術(shù)白皮書}}if(pd.ctrl.drop)retu}}{pd.ctrl.drop=true;}pd.srv6.action=action;pd.ctrl.srv6_end=true;}pd.ctrl.srv6_end=false;}tablesrv6_usid_termina}set_srv6_attribute;set_srv6_no_term;}constdefault_action=set_srv6_no_term;}if(pd.ctrl.srv6_end==false)retupd.enc.pop_header=true;理}elseif(pd.srv6.actP4超融合網(wǎng)關(guān)技術(shù)白皮書hdr.ipv6_h.dst_addr[15:0]=hdr.pd.enc.remove_srh=true;hdr.sr_h.sid0[47:32]=hdr.sr_h.sid0[31:16];hdr.sr_h.sid0[31:16]=hdr.sr_h.sid0[15:0];//ifsid1existed,shirftsid1t}}pd.enc.remove_srh=true;}hdr.sr_h.sid0[95:64]=hdr.sr_h.sid0[63:32];hdr.sr_h.sid0[63:32]=hdr.sr_h.sid0[31:0];//ifsid1existed,shirftsid1t}}}VXLAN是今天云數(shù)據(jù)中心內(nèi)部廣泛部署的虛擬網(wǎng)絡協(xié)議,通過在物理網(wǎng)絡上構(gòu)建一層虛擬網(wǎng)絡,VXLAN成功地解決了數(shù)據(jù)中心云網(wǎng)絡所面臨的海量租戶隔離、虛擬計算節(jié)點靈活遷移、橫向擴展性、多數(shù)據(jù)中心互連以及網(wǎng)絡優(yōu)化等問題。但是,VXLAN自身也面臨著配置復雜、維護困難、廣播報文泛濫、轉(zhuǎn)發(fā)EVPN(EthernetVirtualPrivateNetwork,以太網(wǎng)虛擬專用網(wǎng)絡)解決方案作為下一代EthernetL2VPN解決方案之一,通過BGP協(xié)議承載路由通告控制平面信令,具有從接入側(cè)學習本地MAC地址、從骨干網(wǎng)上學習遠端MAC地址的能力,這種基于控制平面的協(xié)議對MAC/IP的學習增強了原有VXLAN網(wǎng)絡的擴展性,支持分布式三層網(wǎng)關(guān),并能維護主機或虛擬在NetworkOverlay的云數(shù)據(jù)中心網(wǎng)絡中,與VTEP類似,一般會在ToRP4超融合網(wǎng)關(guān)技術(shù)白皮書控制平面基于開源網(wǎng)絡操作系統(tǒng)SONiC開發(fā),整體上繼承SONiC的容器化架構(gòu),所有應用服務均容器化,以實現(xiàn)新增應用功能快速開發(fā)與集成,同時,通過以Redis為中心的數(shù)據(jù)驅(qū)動模式實現(xiàn)所有模塊之間的關(guān)聯(lián)解耦合。下圖描圖7控制平面的整體架構(gòu)數(shù)據(jù)平面基于具備P4可編程能力的芯片開發(fā)SAI接口,以屏蔽不同芯片之間SDK的差異。數(shù)據(jù)平面能夠支持協(xié)議解析可編程、資源可編程、轉(zhuǎn)發(fā)邏輯可編程特性,通過P4編程實現(xiàn)軟硬件夠適應應用場景中靈活多變的報文轉(zhuǎn)發(fā)需求,并能夠根據(jù)需要調(diào)整表項以滿足不同場景下的線速轉(zhuǎn)發(fā)要求。下圖描述了基于具備P4VLAN_INTERFACE|{{vlan_namVLAN_INTERFACE|{{vlan_name}}|{{ip/masNEIGH_TABLE:{{interfaEVPN_TUNNEL_TABLE:{{vni}}:"ifname":"""nexthop":""VNET_ROUTE_TABLE:{{vnet_name}}|{{prefi"ifname":"""nexthop":""P4超融合網(wǎng)關(guān)技術(shù)白皮書transitionaccept;}Action:set_arp_opcotransitionaccept;}P4超融合網(wǎng)關(guān)技術(shù)白皮書NoAction;}actionset_vni_properties(switch_vrf_tvrf){ig_NoAction;}解析內(nèi)層報文:將內(nèi)層報文提取出來,后續(xù)轉(zhuǎn)發(fā)邏輯將根據(jù)內(nèi)層報文內(nèi)容根據(jù)內(nèi)層報文,以及控制面下發(fā)的跨VNI轉(zhuǎn)發(fā)路由進行路由匹配,匹配下P4超融合網(wǎng)關(guān)技術(shù)白皮書根據(jù)INGRESS階段輸出的下一跳隧道路由索引,修改內(nèi)層報文DMAC以及eg_md.flags.routed=true;hdr.ethernet.dst_addr=dmac;eg_md.bd=SWITCH_BD_Deg_md.tunnel.type=type;}NoAction;}網(wǎng)絡的發(fā)展從中心云逐步走近用戶側(cè),從超大數(shù)據(jù)中心逐步延時出很多小如果單純復用中心云的方式,引入復雜的網(wǎng)絡拓撲和多種獨立的網(wǎng)元服務器,會導致過高的網(wǎng)絡成本開銷,而節(jié)點雖小,想要在此之上構(gòu)建完整的云的服務體系(如各種網(wǎng)元都需要支持VPC網(wǎng)元),則急需一種新的技術(shù)方案,來小規(guī)模服務器的節(jié)點,通常屬于東西向流量較大,流量可能上TB,但南北外擴智能網(wǎng)卡,加速卡等技術(shù),通過使用業(yè)界ServerSwitch硬件載體,可以很好的在一臺設備上,同時集多種單體網(wǎng)元于一體,形成小規(guī)模節(jié)點情況下,云本場景主要運用P4超融合網(wǎng)關(guān)技術(shù),在ServerSwitch型硬件載體上,同圖8整體系統(tǒng)架構(gòu)P4超融合網(wǎng)關(guān)技術(shù)白皮書第一層為硬件載體:提供基礎硬件環(huán)境,包括P4可編程交換芯片,X86體系,以及可以配套傳統(tǒng)的網(wǎng)卡,以及按需在X86上搭配各種其他PCIE卡(如FPGA,智能網(wǎng)卡,加解密卡等),智能網(wǎng)卡可通過光纖連第二層為可編程芯片技術(shù):該層提供網(wǎng)元服務編排能換機,以及多種P4網(wǎng)元轉(zhuǎn)發(fā)卸載邏輯(由于節(jié)點小,每個網(wǎng)元的規(guī)模不會很大)。其中網(wǎng)元服務編排為較為重要的部分,主要完成對流量的分發(fā),如決定數(shù)據(jù)走SWITCH交換機邏輯,還是走SLB邏輯,還是走NAT,EVPN,VXLAN,專線等等各種網(wǎng)元邏輯,以及決定數(shù)據(jù)報文是否送到超融合網(wǎng)關(guān)的SLOWPATH,或者是各種網(wǎng)元的控制面或者轉(zhuǎn)發(fā)層的SLOWPATH),等高性能轉(zhuǎn)發(fā)技術(shù),保持SLOWPATH的高轉(zhuǎn)發(fā)能力。而通過DOCKER技術(shù),也可第五層為業(yè)務控制層:該層主要運行在不同的DOCKER容器中其中,對應P4轉(zhuǎn)發(fā)層面主要為網(wǎng)絡編排分發(fā)中心,其中網(wǎng)絡編排中心核心的職責是對流量進行打標分類,以及把流量送到不#defineTO_CPU_NIC1_PORT#defineTO_CPU_NIC2_PORT#defineTO_PEER_DEV_PORT#defineTO_PEER_DEV_PORT#defineTO_PEER_DEV_PORT#defineTO_PEER_DEV_PORT#defineTO_CPU_MGT_PORT#defineTO_CPU_MGT_PORT#defineTO_FPGA_PORT#defineTO_FPGA_PORTconstbit<8>ENS_GW_TYPconstbit<8>ENS_GW_Tconstbit<8>ENS_GW_TYPE_SESSIconstbit<8>ENS_GW_TYPconstbit<8>ENS_GW_TYPE_constbit<8>ENS_GW_TYconstbit<8>ENS_GW_TYPE_constbit<8>ENS_GW_TYconstbit<8>ENS_GW_TY...switch_uint32_tflow_distinguish_tAppEgressPortRedirect()app_egress_port_redirect;bit<8>flow_type,bit<8>direction,bit<9>port_mask,app_ig_md.ens_property.flow_tapp_ig_md.ens_property.directapp_ig_md.ens_property.to_slowp}lkp.vni:ternary@name("lkp.ens_vn}set_ens_gw;NoAction;}constdefault_action=NoAction;size=flow_distinguish_table_size;}do_gw_forward();do_switch_forward();}}}在控制層面通過下發(fā)表項,來對網(wǎng)絡流量按照網(wǎng)元的不同地址或端口等規(guī)類,走到不同的網(wǎng)元處理邏輯上,比如如果是CPU側(cè)或智能網(wǎng)卡已經(jīng)處理好的流量,則do_gw_forward()繼續(xù)走switch邏輯,把流量最終送出;否則會繼續(xù)載邏輯,如果沒有命中卸載邏輯,則通過P4邏輯控制上送到各普通P4超融合網(wǎng)關(guān)技術(shù)白皮書騰訊云專線接入(DirectConnect,DC)提供了一種快速安全連接騰訊云與本地數(shù)據(jù)中心的方法。用戶可以通過一條物理專線,一次性打通位于多地域的2.概要設計DisaggregatedSoftware-DefinedRouter實現(xiàn)多租戶隔離與高性能接入。接入模塊(AccessModule基于商用交換機實現(xiàn)內(nèi)部云網(wǎng)絡和外部對等轉(zhuǎn)發(fā)模塊(ForwardingModule轉(zhuǎn)發(fā)模塊負責使用大型轉(zhuǎn)發(fā)表進行高性能數(shù)據(jù)包處理和路由。它通過2層VXLAN隧道向路由模塊發(fā)送BGP/BFD消息,并通過云數(shù)據(jù)中心中自定義的GRE隧道轉(zhuǎn)發(fā)數(shù)據(jù)路徑流量VPC。轉(zhuǎn)發(fā)模塊采用路由模塊(Routingmodule路由模塊的主要目的是i)使用BGP通過動態(tài)路由與外部對等方(商用設備)互連ii)支持大量客戶,維護鄰居信息iii)實現(xiàn)路由信息更新和網(wǎng)絡故障時的快速收斂和故障切換。路由模塊的內(nèi)核是自研BGPspeaker。對于出站流量,控制模塊將VPC路由饋送至路由模塊,路由模塊將路由傳送至外部對等方。BGP消息通過VXLAN隧道傳輸,因控制模塊(Controlmodule):控制負責優(yōu)化流量控制計算,轉(zhuǎn)發(fā)表項下發(fā)轉(zhuǎn)發(fā)模塊。此外,控制模塊還提供分布式消息隊列,以便在轉(zhuǎn)發(fā)模塊集群和路由模塊集群之間高效地同步動態(tài)轉(zhuǎn)發(fā)規(guī)編排器(Orchestrator編排器充當全局控制器。它負責將操作員的配置請求分發(fā)給相應的控制模塊。編排器從外部管理系統(tǒng)收集特定的流量調(diào)度請物理專線:連接騰訊云與本地數(shù)據(jù)中心的物理線路連接。物理專線支持雙專用通道:專用通道是物理專線的網(wǎng)絡鏈路劃分。用戶可以創(chuàng)建連接至不專線網(wǎng)關(guān):私有網(wǎng)絡的專線流量出入口,可以通過接入多個專用通道與多個不同的IDC互聯(lián)。專線網(wǎng)關(guān)通過集群方式實現(xiàn),全路無單點故障風險,滿足),專線網(wǎng)關(guān)場景為vDR(VirtualDatacenterRouter)。P4轉(zhuǎn)發(fā)面網(wǎng)關(guān)通過一套硬件流水線同時支持vAR與vDR,控制器通過對轉(zhuǎn)發(fā)網(wǎng)關(guān)下發(fā)不同表項來實現(xiàn)轉(zhuǎn)P4超融合網(wǎng)關(guān)技術(shù)白皮書3.詳細設計報文解析parser階段識別隧道類型為VXLAN或者TGRE,并提取不同隧道的字段作為查找鍵值。VXLAN隧道提取VNI作為標識,T-GRE隧道的option字switch_uint32_ttunnel_to_vrf_table_size,switch_uint32_tvrf_attriactionmap_tunnel_to_vrf(switch_vrf_tvrig_md.checks.urpf=ur}actionmap_tunnel_to}ig_md.tunnel.type:exaig_md.tunnel.key:exa}map_tunnel_to_vrf_miss;map_tunnel_to_vrf;}constdefault_action=map_tunnel_to_vrf_miss;size=tunnel_to_vrf_table_size;}}}}Overlay路由查找支持多租戶隔離,核心為將VRF索引作為LPM查找的輸入鍵值。網(wǎng)關(guān)同時支持業(yè)務流量與BGP協(xié)議流量轉(zhuǎn)發(fā),對于BGP協(xié)議流量LPM查找結(jié)果中標識三層轉(zhuǎn)發(fā)需要保持TTL不變。當業(yè)務流量TTL=1時,需要將報switch_uint32_tlpm_table_size,ig_md.flags.nottl=not}}NoAction;}constdefault_action=NoAction;requires_versioning=false;}ig_md.flags.host_hit=trig_md.flags.nottl=fal}ig_md.flags.host_hit=falig_md.flags.nottl=fal}}}}}多個下一跳。網(wǎng)關(guān)根據(jù)overlay報文的5元組(非分片IP報文)或者3元組switch_uint32_tecmp_group_table_size,switch_uint32_tecmp_selection_table_size,switch_uint32_tecmp_max_membeHash<switch_uint16_t>(HashAlgorithm_t.IDENTITY)selector_hash;ActionProfile(ecmp_selection_table_size)ecmp_action_profile;ActionSelector(ecmp_action_profile,selector_hash,SelectorMode_t.FAIR,ecmp_max_members_per_group,ecmp_group_table_size)ecmp_selector;}eg_md.nexthop:exact;eg_md.inner_five_tuples_h}@defaultonlyNoAction;set_ecmp_properties;}constdefault_action=NoAction;size=ecmp_group_table_size;implementation=ecmp_select}}}}路由下一跳為出向隧道封裝信息索引,根據(jù)索引查找得到隧道類型,隧道eg_md.tunnel.type=SWITCH_TUNNEL_eg_md.tunnel.key[23:0]=vni;eg_md.tunnel.dst_addr=dst_addr;}eg_md.tunnel.type=SWITCH_TUNNEeg_md.tunnel.key=vpcid;eg_md.tunnel.dst_addr=dst_addr;}eg_md.pkt_action=PKT_Aeg_md.drop_reason=SWITCH_DROP_REASON_}drop_pkt;encap_vxlan;encap_gre;}constdefault_action=drop_pkt;size=tunnel_nexthop_table_size;}eg_md.flags.nexthop_h}}}actionadd_udp_header(bit<16>src_port,bit<1hdr.udp.setValid();hdr.udp.src_port=src_port;hdr.udp.dst_port=dst_port;}actionadd_vxlan_header(hdr.vxlan.setValid();P4超融合網(wǎng)關(guān)技術(shù)白皮書hdr.vxlan.vni=vni;}hdr.gre1.setValid();tocol=proto;hdr.gre1.vpcid=vpcid;}P4超融合網(wǎng)關(guān)技術(shù)白皮書}}P4超融合網(wǎng)關(guān)技術(shù)白皮書add_vxlan_header(eg_md.tunnel.key[23:0]);add_udp_header(eg_md.vxlan_src_port_hash,vxlan_port);add_ipv4_header(IP_Phdr.ethernet.ether_type=}add_gre_header(eg_md.tunnel.key,GRE_PROTOCOLS_IP);P4超融合網(wǎng)關(guān)技術(shù)白皮書add_ipv4_header(IP_Phdr.ethernet.ether_type=}eg_md.tunnel.type:exact;eg_md.tunnel.gre_ty}NoAction;}PORT_VXLAN);}constdefault_action=NoAction;}}}}隨著AR/VR、車聯(lián)網(wǎng)等業(yè)務產(chǎn)業(yè)化不斷推進,邊緣算網(wǎng)基礎設施正面臨著更多挑戰(zhàn),一方面需要提供低時延、高帶寬的網(wǎng)絡轉(zhuǎn)發(fā)能力,另一方面需要提傳統(tǒng)的邊緣算力基礎設施(如MEC)通常包含分布在不同地域的多臺x86服務器,每臺服務器配置大量的CPU計算核心處理計算任務,CPU核心之間通過總線和L3Cache進行數(shù)據(jù)交互??紤]到高速網(wǎng)絡處理任務中,Cachemiss或者Buscontention將會導致大量的時延,因此,當服務器處理高速的并發(fā)流量時,通常采用“Run-to-Completion”的計算架構(gòu),將相同的處理程序運行在每個CPU核心上,使用網(wǎng)卡的RSS(Receiver-SideScaling)功能將到達的并發(fā)流基于五元組哈希到多個CPU核心上。由于流和流之間沒有相互依賴,對每一個流的處理都在特定的CPU核心上完成,不會造成核間通信,從而具備較高的然而,考慮到現(xiàn)實中存在大流、小流的情況,即使RSS和哈希函數(shù)足夠隨機均勻,仍然會出現(xiàn)多個大流被哈希到同一個CPU核心上導致CPU核間負載不均衡的情況,甚至出現(xiàn)單個CPU核心被大流打爆的情況。由于一個CPU核心上往往會運行大量的并發(fā)流處理任務,CPU核心被打爆會造成大量并發(fā)流或租戶業(yè)務的丟包,從而影響端側(cè)用戶的使用體驗。考慮到邊緣計算的服務器本身計算資源有限,為了避免出現(xiàn)CPU被打爆的情況,往往只能將處理負載維持在較在新型異構(gòu)算力設施中,除了x86多核處理器,往往還包括可編程網(wǎng)絡交),中的網(wǎng)絡交換資源,我們設計了面向異構(gòu)算力設施的新型“Run-to-Completion”計算架構(gòu),解決通過RSS投送計算任務導致核間負載不均衡的問題,從而更好相比較于傳統(tǒng)網(wǎng)卡RSS盲目基于五元組哈希的方法,我們希望基于實時算力負載進行更加合理高效的流量調(diào)度,為此我們需要掌握異構(gòu)算力設施內(nèi)部不并反饋給多核CPU前端的調(diào)度模塊(例如網(wǎng)卡的RSS模塊或異構(gòu)算力設備中的),進而實現(xiàn)核間算力的負載均衡??紤]到常規(guī)的網(wǎng)卡并不具備可編程能力,只能被動的執(zhí)行RSS功能,而在新型的算網(wǎng)融合設備中,可編程交換芯片恰好能夠充當原來網(wǎng)卡的流量投放角色,從而更加精確的將流量或計算任務投放到最適可編程交換芯片賦予了異構(gòu)設施更加強大的轉(zhuǎn)發(fā)能言在可編程交換芯片中實現(xiàn)了算力調(diào)度功能,對于大規(guī)模的待處理業(yè)務流,我們的流量調(diào)度框架可以在維護流一致性的前提下盡為了獲得硬件設備的實時算力,可編程交換芯片需要主動獲取異構(gòu)算力設施上的CPU負載,并在芯片內(nèi)部根據(jù)各個CPU核的實時算力做出合適的數(shù)據(jù)包轉(zhuǎn)發(fā)行為,對于新到的業(yè)務流,交換芯片判斷其為新流并查找最適合處理該計算任務的CPU,并將此任務投送到對應的CPU核心上。在考慮流量傳輸?shù)囊恢滦詴r,我們選擇帶狀態(tài)的處理方式,因為無狀態(tài)的FlowAffinity保證戶端對流量加以處理,不適合我們的算力調(diào)度融合網(wǎng)關(guān),所以對于已經(jīng)確定投送的計算任務,我們通過采用帶狀態(tài)的方法去實時保證FlowAffinity,記錄正在處理的任務及其投送的CPU核的狀態(tài),后續(xù)數(shù)據(jù)包可以根據(jù)此狀態(tài)中找到投送的CPU,以此維護流量傳輸?shù)囊恢滦?。在設計過程中同時考慮到了負載感知開銷,排隊時延,處理時延等影響因素,可以在讓網(wǎng)關(guān)的轉(zhuǎn)發(fā)能力得到極大提測試方案分為業(yè)務功能,基準性能,綜合性能和測試例1.1業(yè)務流程測試測試目的驗證P4編程實現(xiàn)的業(yè)務流程測試拓撲測試步驟測試儀編輯源業(yè)務報文并發(fā)送給被測設備。在測試儀的接收端接收報文并解碼以上測試步驟,根據(jù)網(wǎng)元類型,覆蓋不同的業(yè)務類型和業(yè)務路徑。比如VPC內(nèi)部通信,同租戶VPC間通信,異租戶通信,VPC與互聯(lián)網(wǎng)通信等路徑。預期結(jié)果測試儀接收端能接收到報文解碼驗證測試報文經(jīng)過的處理與預期相符。測試例2.1吞吐量測試測試目的驗證網(wǎng)元設備的吞吐量測試拓撲測試步驟測試儀表模擬一路業(yè)務,采用IPv4/UDP封裝。按照RFC2544吞吐量測試流量,用二分法測試88字節(jié),128字節(jié),256字節(jié),1024字節(jié),1518字節(jié)和9000字節(jié)的吞吐量。記錄吞吐量(bps和pps)測試儀表模擬一路業(yè)務,采用IPv6/UDP封裝重復步驟2-3.IPv4/UDP封裝和IPv6/UDP封裝。IPv4:IPv6為3:1.重復步驟2-3.預期結(jié)果吞吐量bpsppsbpsppsbps88字節(jié)256字節(jié)1024字節(jié)1518字節(jié)9000字節(jié)測試例2.2時延測試測試目的驗證網(wǎng)元設備的時延測試拓撲測試步驟測試儀表模擬一路業(yè)務,采用IPv4/UDP封裝。分別以線速率的10%,50%和吞吐量的90%,測試88字節(jié),128字節(jié),256字節(jié),1024字節(jié),1518字節(jié)和9000字節(jié)的平均時延和最大時延。記錄平均時延和最大時延測試儀表模擬一路業(yè)務,采用IPv6/UDP封裝重復步驟2-3.測試儀模擬一路IPv4業(yè)務和一路IPv6業(yè)務,分別采用IPv4/UDP封裝和重復步驟2-3.預期結(jié)果時延負載IPv4&IPv6平均時延最大時延平均時延最大時延平均時延最大時延88字節(jié)50%90%吞吐量50%90%吞吐量256字節(jié)50%90%吞吐量1024字節(jié)50%90%吞吐量1518字節(jié)50%90%吞吐量9000字節(jié)50%90%吞吐量測試例3.1綜合性能測試測試目的可編程網(wǎng)元的設計,需要考慮綜合應用場景下的眾多因素,存在性能和設計的妥協(xié),這個測試項目的是考察下列設計和算法實現(xiàn)對性能的影負載均衡–多鏈路,Cluster中多節(jié)點,芯片中并行處理TCAM,SRAM,DRAM多級表命中率哈希沖突處理IPv6超長地址表項處理這個測試項目對上述問題做定量分析測試拓撲測試步驟建模網(wǎng)元的應用規(guī)模,設IPv4虛機數(shù)量為m,IPv6虛機數(shù)量為n,服務器數(shù)量為x,VNI數(shù)量為y,根據(jù)應用規(guī)模建立模型<m,n,x,y>測試儀模擬對應規(guī)模數(shù)量的IPv4虛機,IPv6虛機,主機以及VNI,所有仿真地址和VNI按照隨機模型或者應用場景內(nèi)分布模型實現(xiàn)。虛機通信模型按比例覆蓋VPC內(nèi)部通信,同租戶VPC間通信,異租戶通信,VPC與互聯(lián)網(wǎng)通信。測試負載設置:根據(jù)8/2原則,選擇20%的仿真虛機產(chǎn)生80%的總負載,80%的仿真虛機產(chǎn)生20%的負載。測試幀長設置:根據(jù)應用場景選擇典型幀長或者混合幀長測試。測試帶寬:總帶寬的90%。測試時間:60minutes或者以上。記錄丟包率,最大時延和平均時延。預期結(jié)果仿真模型/測試配置說明丟包率最大時延平均時延4.業(yè)務性能測試測試例4.1業(yè)務性能測試測試目的測試例3.1中隊下列設計和算法實現(xiàn)對性能的影響進行定量分析:負載均衡–多鏈路,Cluster中多節(jié)點,芯片中并行處理TCAM,SRAM,DRAM多級表命中率哈希沖突處理IPv6超長地址表項處理上述設計上在傳輸層面的性能,對TCP和UDP不同應用層上的放大因子是不同的。本測試例用基于狀態(tài)的業(yè)務流量定性分析性能。測試拓撲測試步驟建模網(wǎng)元的應用規(guī)模,設IPv4虛機數(shù)量為m,IPv6虛機數(shù)量為n,服務器數(shù)量為x,VNI數(shù)量為y,根據(jù)應用規(guī)模建立模型<m,n,x,y>測試儀模擬對應規(guī)模數(shù)量的IPv4虛機,IPv6虛機,主機以及VNI,所有仿真地址和VNI按照隨機模型或者應用場景內(nèi)分布模型實現(xiàn)。虛機通信模型按比例覆蓋VPC內(nèi)部通信,同租戶VPC間通信,異租戶通信,VPC與互聯(lián)網(wǎng)通信。業(yè)務選擇:根據(jù)應用場景選擇真實業(yè)務類型,比如HTTP,HTTPs,QUIC,視頻,存儲等等,按比率配置。測試負載設置:根據(jù)8/2原則,選擇20%的仿真虛機產(chǎn)生80%的總負載,80%的仿真虛機產(chǎn)生20%的負載。測試負載:總負載的90%。測試時間:60minutes或者以上。記錄有效帶寬,業(yè)務失敗率以及業(yè)務平均和最大響應時間預期結(jié)果仿真模型/測試配置說明有效帶寬業(yè)務失敗率平均響應時間最大響應時間控制層向轉(zhuǎn)發(fā)層下發(fā)數(shù)據(jù)的過程,可能會調(diào)用P4芯片廠商提供的接口實現(xiàn)。本部分介紹的是一種當超融合網(wǎng)關(guān)融合了SONIC交換網(wǎng)元和其他的PINS(P4IntegratedNetworkStack)是一項行業(yè)協(xié)作的開源項目,目的是為了給傳統(tǒng)的路由設備注入P4可編程能力和SDN功能。具體來說,該項目使用P4對SAI流水線進行建模,為流水線添加可編程擴展,并引入P4Runtime作為在這個開源項目中,英特爾、谷歌和ONF對架構(gòu)和代碼做出了初步貢獻。SONiC(SoftwareforOpenNetworkingintheCloud)是一個基于Linux的開源網(wǎng)絡操作系統(tǒng),由微軟和OpenComputeProject共同開發(fā)。SONiC包括功能齊全圖9SONIC架構(gòu)SAIextensions1是SONIC中引入的新功能,以允許創(chuàng)新并提高SAI本地網(wǎng)絡管道中新增功能的速度。當前的SAI擴展有一堆描述硬件表的屬性,并且可PINS本質(zhì)上在SONIC中添加了SDN功能,以允許可編程開關(guān)中的遠程SAIobject,PINS使得SDN控制器可以用標準方式參與SONIC生態(tài)系統(tǒng),以控1CurrentSAIextension/opencomputeprohorchagent代碼、驗證框架以及任何P4擴展都將開源。交換機管道的用戶和供P4程序?qū)AI轉(zhuǎn)發(fā)pipeline進行了建模,而P4RT接口也廣為SONiC/SAI),SONiC被結(jié)構(gòu)化為各種容器,這些容器通過共享的Redis實例,并且通過多個邏輯數(shù)據(jù)庫來進行通信。為了添加SDN支持,PINS在SONiCP4Orch:一個新的Orch,將P4RT表從APPLDAPPLSTATEDB:用于應用程序查詢系統(tǒng)狀態(tài)的新DB。它具有與APPLDB相同圖10PINSArchitectureP4RT應用程序在自己的容器中運行,并支持多個gRPC客戶端會話。應用程序負責解析來自其客戶端的請求,驗證它們并將內(nèi)容寫入APPLDB中的新P4table,并通知客戶端最終成功/失敗的意圖。P4RT應用程序還支持來自其客戶端的讀取請求。讀取請求向客戶端提供交換機的當前狀態(tài)信息。補充文件中提供了有關(guān)P4RT應用程序的更多詳細信息:P41.P4RTTables(newinAPP/CONFIGDB)在SONiC中,與ASICDB表相比,APPLDB包含上層的編程細節(jié)。與傳統(tǒng)的SONiC應用程序不同,SDN控制器提供底層細節(jié),大多數(shù)現(xiàn)有的APPLDB表都不支持這樣的詳細編程級別。為了克服這個限制,PINS體系結(jié)構(gòu)定義表的新APPL_DB表,它允許更詳細的定義。P4RT應用程序?qū)懭脒@些表。2.P4ORCH(newinSWSScontainer)P4Orchagent(P4Orch)處理由P4RT應用程序添加到APPLDB中的新P4表的條目,解析它們,然后創(chuàng)建必要的SAI對象并將它們作為條目添加到ASICDB。P4Orch創(chuàng)建的SAI對象可以引用其他orchagent創(chuàng)建的SAI對象。在下,P4Orch將與相應的orchagent交互以引用這些對象并在必要時增加引用計3.APPLStateDBandResponseMessage間的同步通信。PINS將同步通信擴展到應用程序。大多數(shù)SDN控制器需
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025拆除煙囪協(xié)議合同
- 2025年度產(chǎn)業(yè)園區(qū)委托運營管理與招商引資合同4篇
- 二零二五年度商業(yè)停車場車位代理銷售與管理合同模板4篇
- 買賣合同糾紛原告代理詞2篇
- 二零二五年度承臺基坑開挖施工勞務分包合同合同終止與解除條件4篇
- 2025年度高端制造業(yè)自動化生產(chǎn)線安裝與勞務派遣合同3篇
- 二零二五年度廚師行業(yè)自律規(guī)范合同4篇
- 2025年度出租車公司車輛報廢及更新合同4篇
- 二零二五年度共享單車停車區(qū)域使用權(quán)租賃合同范本3篇
- 二零二四年智能工廠信息化建設項目合同
- 南通市2025屆高三第一次調(diào)研測試(一模)地理試卷(含答案 )
- 2025年上海市閔行區(qū)中考數(shù)學一模試卷
- 2025中國人民保險集團校園招聘高頻重點提升(共500題)附帶答案詳解
- 重癥患者家屬溝通管理制度
- 法規(guī)解讀丨2024新版《突發(fā)事件應對法》及其應用案例
- IF鋼物理冶金原理與關(guān)鍵工藝技術(shù)1
- 銷售提成對賭協(xié)議書范本 3篇
- 勞務派遣招標文件范本
- EPC項目階段劃分及工作結(jié)構(gòu)分解方案
- 《跨學科實踐活動4 基于特定需求設計和制作簡易供氧器》教學設計
- 信息安全意識培訓課件
評論
0/150
提交評論