$$ 05 $$
小艾和小皮相視一笑:“阿牛的事情,我們會在喜鵲山發(fā)一個征婚廣告,讓阿牛準(zhǔn)備好相親就好。”
“我代阿牛先行謝過了?!?p> “舉手之勞,不用客氣。另外就是,通信方案的優(yōu)化,你有好的想法了嗎?”
“想必兩位也清楚,現(xiàn)在的策略,存在太多不穩(wěn)定因素。我現(xiàn)在沒有很完美的方案,但我想從簡到難,一步一步嘗試?!?p> ·
小皮問道:“看來跟我們修煉仙術(shù)一樣啊,不是可以一蹴而就的?!?p> “咳,你好像最近根本沒有修煉吧……”小艾補(bǔ)刀。
牛郎接著說:“我的想法是,提出優(yōu)化方案->進(jìn)行通信嘗試->找到并分析問題->再次提出優(yōu)化方案……如此小步試錯,不斷循環(huán)迭代,最終趨近于完美方案?!?p> “這個想法好棒呀!”小皮稱贊道。
“我認(rèn)為這是最快的方案了,我將之稱為敏捷策略?!迸@煽偨Y(jié)道。
·
小艾問;“那這接下來的第一步,要怎么走?”
牛郎想了想,說:
“首先,我最終目標(biāo)是與織女成功鵲橋相會。而王母是整個過程的最大阻力,我要與織女通信約定見面日期,但是不能讓王母知道。”
“所以,我對通信的要求,是安全穩(wěn)定,這兩點(diǎn)缺一不可?!?p> “那么,穩(wěn)定的通信,就是我們要走的第一步。在這之后,才有資格去討論通信安全?!?p> ·
----
$$ 06 $$
“別扯大道理了,我就想知道,接下來該怎么做?!毙∑げ荒蜔┑卣f道。
“現(xiàn)在鏈路已經(jīng)建立,那么,最簡單的通信,就是我直接通過這條鏈路,發(fā)型消息給織女。你們覺得,這樣的通信有什么問題?”
小艾想了想,說:“好像有些脆弱。一旦中間被王母攔截了,那么織女姐姐就收不到消息了?!?p> 小皮接著補(bǔ)充:“而且這樣的話,我們也不知道消息是被攔截了,還是織女真的收到了?!?p> 牛郎鼓掌:“兩位仙子果然冰雪聰明!問題就在這里,現(xiàn)在的通信,穩(wěn)定性極差,且發(fā)送者不知道消息的狀態(tài)?!?p> ·
小艾說:“我覺得,消息被攔截這個,我覺得咱們防不住的,那畢竟是手眼通天的王母。”
牛郎再次豎起大拇指:“對,這是后面安全上要解決的問題。所以,現(xiàn)在最重要的是,要確??椗欢苁盏轿业南ⅰ!?p> ·
“就這個問題,咱們先來討論一個日常話題:兩個人說再見,怎樣保證對方聽到了你的‘再見’?”牛郎順勢發(fā)問。
“這個簡單,雙方約定一下,只要對方聽到了,就喊一聲‘我聽到了’,不就得了?”小皮不假思索,迅速給出了答案。
“很好,那么,他有怎么知道,你聽沒聽見這句‘我知道了’呢?”
“我再回喊一句‘我聽到了’?”
“那你們倆什么時候是個頭?”
·
“哈哈哈哈——”一旁的小艾笑了,“我覺得這個問題沒有答案,因?yàn)椋詈笠粋€說話的人,沒有機(jī)會確認(rèn)自己這句話對方聽到?jīng)]有?!?p> 牛郎點(diǎn)了點(diǎn)頭頭:“對,就是這個道理。絕對的穩(wěn)定是不存在的,我們只是通過一些策略,讓穩(wěn)定性達(dá)到一個我們可接受的范圍,就足夠了?!?p> 小皮還是有些不太甘心:“那你的策略是什么?”
·
----
$$ 07 $$
牛郎晃了晃手中的空杯,推到小皮面前:“把茶滿上,聽我慢慢道來?!?p> “你竟然還會吩咐神仙了!”小皮一邊斟茶,一邊說笑著。
牛郎喝了一口茶水,開始娓娓道來:
“在真正的消息發(fā)送前后,進(jìn)行一些前置與后置的事件作為確認(rèn)。我稱之為‘握手與揮手’。”
·
“握手,就是我先發(fā)送一個‘你好’,織女收到后,回復(fù)一個‘你好’,我收到了織女的你好,再回復(fù)給織女一個‘收到’?!?p> “這個過程,一共有3次行為,我稱之為‘三次握手’。這樣可以保證,當(dāng)前的鏈路是穩(wěn)定可通信的?!?p> “緊接著,我再將自己要發(fā)送的消息,發(fā)給織女??椗盏较ⅲ梢曰貜?fù)我她想說的?!?p> “收到織女的回復(fù)后,本次通信結(jié)束,進(jìn)入‘揮手’階段?!?p> ·
“揮手,就是我發(fā)送一個‘再見’,織女收到后,回復(fù)一個‘再見’。我收到后,會回復(fù)一個‘收到’,然后織女收到后,最后回復(fù)一個‘收到’給我?!?p> “當(dāng)然,織女最后的這個‘收到’,如果我接收到了,那么我可以肯定,本次的通信,一定是成功的?!?p> “如果我沒收到,但由于我之前得到了織女回復(fù)的‘再見’,我可以斷定,主體信心的傳遞,一定是成功的?!?p> ·
“如果中間有任意一個步驟失敗,那么,從頭重來?!?p> “這樣可以保證,發(fā)送者,一定知道消息發(fā)送成功了?!?p> “增加了通信成本,但可以保證通信穩(wěn)定?!?p> ·
----
$$ 08 $$
小艾和小皮聽得入神:“搜得寺內(nèi)!四國一!”
“神仙怎么總是說些讓人聽不懂的話……”
·
小艾問道:“這個通信過程有些復(fù)雜,但不得不說挺完善的。整個過程沒有起個名字嗎?”
牛郎想了想,說:“之前的通信方式,只是一次傳輸,重在將我的數(shù)據(jù)傳過去,可以稱之為‘用戶數(shù)據(jù)報協(xié)議’,簡稱‘UDP’?!?p> “而新的通信,重在傳輸過程,我想稱之為‘傳輸控制協(xié)議’,簡稱‘TCP’?!?p> ·
小皮說:“TCP雖然犧牲了一部分傳輸性能,但是卻可以提供穩(wěn)定可靠的通信。這很可能是未來的大勢所趨。”
牛郎反駁:“不一定。目前看TCP最適合我們,但很可能我們沒有挖掘出UDP的優(yōu)勢,UDP的高效性,說不定也是未來的一張王牌。”(注:指HTTP3)
“看來,這馬屁拍的還不到位呀……”小艾低聲吐槽。
·
牛郎客氣的說:“那以后的通信,可就要麻煩兩個位仙子多多照應(yīng)了?!?p> “放心,我們稍后會通知所有喜鵲,新的通信方式,很快會被付諸實(shí)施?!毙“f。
“牛郎謝過?!?p> “別光口頭說謝謝呀,拿出點(diǎn)誠意好不好?你看這喜鵲廟也是有點(diǎn)破敗了……”小皮說道。
“余家貧,耕植不足以自給……”牛郎面露難色。
·
“趕緊從我眼前消失!”小皮喊到。
“那牛郎也先行下山了,兩位仙子保重?!迸@善鹕淼绖e,離開了喜鵲廟。