【編者按】亞馬遜AWS采用私有的解決方案,但是卻缺少對(duì)AWS VPC中的Packet forwarding機(jī)制的相關(guān)說(shuō)明,Chiradeep Vittal通過(guò)一系列測(cè)試,分析了AWC VPC包轉(zhuǎn)發(fā)模型的相關(guān)細(xì)節(jié),同時(shí)發(fā)現(xiàn)該模型采用的是multi-VRF機(jī)制。
VMware NSX和Hyper-V對(duì)網(wǎng)絡(luò)虛擬化中Packet forwarding的行為作出了詳細(xì)文檔描述,但是亞馬遜沒(méi)有任何相關(guān)文檔來(lái)說(shuō)明AWS VPC中的Packet forwarding機(jī)制,盡管亞馬遜采用的是私有的解決方案(深度定制的Xen Hypervisor和自行定制的虛擬交換機(jī)),但是通過(guò)分析AWS的網(wǎng)絡(luò)特征和用戶文檔搞清楚它的一些細(xì)節(jié)也不是一件很困難的事情。
訂閱“AWS中文技術(shù)社區(qū)”微信公眾號(hào),實(shí)時(shí)掌握AWS技術(shù)及產(chǎn)品消息!
AWS中文技術(shù)社區(qū)為廣大開(kāi)發(fā)者提供了一個(gè)Amazon Web Service技術(shù)交流平臺(tái),推送AWS最新資訊、技術(shù)視頻、技術(shù)文檔、精彩技術(shù)博文等相關(guān)精彩內(nèi)容,更有AWS社區(qū)專家與您直接溝通交流!快加入AWS中文技術(shù)社區(qū),更快更好的了解AWS云計(jì)算技術(shù)。
Chiradeep Vittal通過(guò)運(yùn)行一系列測(cè)試寫了一篇博客來(lái)分享他的心得,總結(jié)如下:
1. 亞馬遜VPC的虛擬交換機(jī)只做L3 unicast IPV4 forwarding(類似于最新的Hyper-V網(wǎng)絡(luò)形態(tài)),所有的非IPv4流量和IPv4多播和廣播會(huì)被drop掉。
2. 在Hypervisor層虛擬交換機(jī)中L3的轉(zhuǎn)發(fā)并不減TTL,看起來(lái)就像所有的虛擬機(jī)都處于同一個(gè)子網(wǎng)中。(猜測(cè):毫無(wú)疑問(wèn),此功能需要有類似避免回路出現(xiàn)的功能輔助,否則網(wǎng)絡(luò)可能會(huì)被阻塞。)
3. Hypervisor代理了所有的ARP請(qǐng)求并且回復(fù)目標(biāo)虛擬機(jī)的MAC地址或第一跳的網(wǎng)關(guān)地址(早期的AWS VPC實(shí)現(xiàn)使用相同的目的MAC地址回復(fù)所有的ARP請(qǐng)求)
4. 虛擬交換機(jī)實(shí)現(xiàn)了類似路由的功能,例如,如果ping的是默認(rèn)網(wǎng)關(guān)會(huì)響應(yīng),如果ping的是其它子網(wǎng)的網(wǎng)關(guān),數(shù)據(jù)包會(huì)被drop掉。
這種實(shí)現(xiàn)看起來(lái)平淡無(wú)奇, 但是,慢著,這還不是全部,Amazon VPC轉(zhuǎn)發(fā)模型絕妙的地方在于,他是multi-VRF(multiple routing tables)機(jī)制,用戶可以在VPC中創(chuàng)建multiple routing tables并把他們當(dāng)中的某個(gè)分配給其中一個(gè)子網(wǎng)。
你可以,舉例來(lái)說(shuō),使用默認(rèn)路由來(lái)路由internet發(fā)起的請(qǐng)求,并把這些請(qǐng)求路由到web server所在的子網(wǎng),把訪問(wèn)數(shù)據(jù)庫(kù)的請(qǐng)求路由到你自己的數(shù)據(jù)中心,對(duì)應(yīng)用服務(wù)器之間的網(wǎng)絡(luò)請(qǐng)求(本地鏈接)使用非默認(rèn)路由等等,如果你是一個(gè)MPLS/VPN geek用這一特性來(lái)分拆路由表這是一個(gè)很cool的特性,但是,同時(shí)對(duì)于那些想要把已經(jīng)存在的L2網(wǎng)絡(luò)migrate到云中的用戶來(lái)說(shuō)也是一個(gè)挑戰(zhàn)。
原文鏈接: Amazon VPC包轉(zhuǎn)發(fā)機(jī)制分析
如您需要了解AWS最新資訊或是技術(shù)文檔可訪問(wèn)AWS中文技術(shù)社區(qū);如您有更多的疑問(wèn)請(qǐng)?jiān)贏WS技術(shù)論壇提出,稍后會(huì)有專家為您進(jìn)行答疑。