Wireshark 的前世今生

2021-06-27 22:50:10 字數 1699 閱讀 2928

這是乙個無關技術的小故事。但是作為wireshark愛好者,了解一下這個軟體的前世今生也是極好的,誰不想在中午和同(ling)事(dao)一起吃飯的時候講個業內小故事,顯得自己業務精湛又品味不俗呢?

故事要從20世紀90年代開始說起。那時的it業欣欣向榮:摩托羅拉正野心勃勃地實施銥星計畫;google的兩位創始人還在房東的車庫裡研究搜尋引擎。我們故事的主人公gerald combs還是默默無聞的青年。和那個時代的很多任務程師一樣,gerald技術精湛,熱情上進,動手能力極強。他就職於一家網路提供商,時常需要分析軟體來輔助工作。可是這樣的軟體太少了,而且乙個license就要80,000美金。即便在今天的美國,這也不是一筆小數目。

gerald把這個軟體命名為ethereal,正對應了它的功能—還原乙太網的真相。ethereal的**版權自然屬於gerald,而他所在的公司nis(network integration services)則擁有ethereal商標。當時誰也沒有想到,這個歸屬權會在多年後引起一場風波。由於ethereal寫得太好了,而且是以gnu gpl開源許可證發布的,世界各地的開發者紛紛參與到這個專案中。沒過多久,它就涵蓋了世界上大多數通訊協議,成為廣受歡迎的網路分析軟體。它可以用於教學,如果網路教師用它輔助上課,可以大大提高學生的興趣。也可以輔助開發和測試,是除錯網路程式的好工具。當然它最大的用途還是診斷問題;從資料鏈路層到應用層的種種協議,幾乎涉及網路的地方就有它的用武之地。更難得的是,gerald並沒有打算從中獲利,它至今還是完全免費的,每位願意學習的工程師都可以受益。

世界的變化總是超乎我們的想象,尤其是在it業。沒幾年時間,銥星計畫徹底破產;google卻成了最大的網路公司。只有gerald沒有變化,一直在兢兢業業地維護ethereal。每個月都有新的協議出現,已有的協議也在推出新版本,他永遠有忙不完的活。中間僅僅發生過一次改名風波:2023年他離開nis,加入了cace。由於和老東家在ethereal的商標問題上無法達成一致,gerald把專案改名為wireshark。從此ethereal這個風靡多年的專案停止了,只留下www.ethereal.com網域名稱。我們至今還能訪問它,但是會被重定向到一家叫aos的公司。為什麼不是重定向到nis呢?因為nis在2023年被aos合併了。

wireshark延續了ethereal的成功,現在有成千上萬的開發者在追隨gerald。每年還會召開一次為期4天的sharkfest大會。2023年wireshark在sectools排行第一,2023年被insecure.org評為「no. 1 packet sniffers」。美國的技術作家們開始為它著書立說,中國的出版社也在引進(比如人民郵電出版社引進出版的《wireshark資料報分析實戰(第2版)》)。值得一提的是,cace後來被riverbed收購了,riverbed成了wireshark專案的贊助商。很多中國工程師可能覺得riverbed名不見經傳,但說到linux裡常用的tcpdump命令就不會陌生。tcpdump的開發者之一steve mccanne就是riverbed的cto。而winpcap的開發者loris degioanni也在riverbed工作。似乎冥冥之中自有天意,riverbed把網路探測界的先鋒們聚到了一起。我們要向riverbed致敬,多虧了這些偉大的工具,我們才得以窺探網路的秘密。

gerald不久前在twitter上宣布,「wireshark is, and will always be open source。」其實wireshark即便不再開源也不會抹殺他的成就。改變世界的it英雄,可以像jobs一樣領導乙個成功的公司,更可以像gerald一樣創造一件傳世的作品。他們的成就一樣會被鐫刻在it歷史的豐碑上。

LinkedList前世今生

1 linkedlist元素在內部儲存的實現,節點定義即指向前一元素的指標,後一元素的指標,當前元素的值。private static class entry 2 建立乙個空鍊錶。預設有個頭指標header。private transient entryheader new entry null,n...

前世今生 STL

嘛,string就是乙個用於字串處理的標準類庫,但是需要注意的是其速度可能會比直接操縱char陣列要慢一些。reverse這個方法是我一直都想找到但是沒有找到的,在判斷回文的時候格外好用。string s abcdef string ss s ss abcdef reverse ss.begin s...

位址 前世今生

alu arithemetic and logic unit 書面意思是 算術與邏輯部件,運算器,算術與邏輯單元,通俗來講 cpu處理的資料位數。從4位 8位 16位 32位,處理能力越來越強。發問 16位計算能力如何處理20位的位址呢?cs ip 是一組暫存器,用於告知 cpu 當前將要讀取的彙編...