天天看點

中國科學院院士梅宏:資訊化3.0是軟體定義的時代

2008年,斯坦福大學主導的“nsf m 的expedition in computing”項目,通過軟體定義的方式将傳統交換機變成openflow交換機,開啟了軟體定義以前的新時代。2011年前後,openflow被用于雲計算平台中進行網絡管理,并被廣泛接受,這種方式被稱為“sdn”,并且在随後的發展中,甚至可以從某種意義上說sdn重新“定義”了傳統的網絡架構甚至通信産業。

但是,不管軟體定義有多強大,它的主要目的都主要是要滿足資訊化發展的新要求。

中國科學院院士梅宏:資訊化3.0是軟體定義的時代

6月14日,在第九屆中國雲計算大會上,北京理工大學黨委常委、副校長,中國科學院院士,中國電子學會雲計算專家委員會副主任委員,中國大資料專家委員會副主任委員梅宏發表了《資訊化3.0:軟體定義的時代》的主題演講。

梅宏解釋道,所謂的資訊化就是指資訊技術在我們人類社會生活方方面面綜合應用的過程,随着資訊技術的發展,以及應用的深入和廣泛,我們可以看到資訊化應用在技術平台、管理資源和應用模式方面都在逐漸地變化。

梅宏将我國的資訊化劃分為三個發展階段:

第一個階段可以成為資訊化1.0,這個階段主要以單機應用為主,這個階段的應用模式主要是單機處理、資料庫為中心的區域網路應用,技術平台也隻是單機/區域網路;

第二個階段以聯網應用為特征,應用模式打破了部門或組織固有的邊界,強調資訊共享與系統協同的網絡化應,技術平台從單機/區域網路拓展到廣域網/互聯,到了後期,應用熱點演變成網際網路向移動互聯和物聯網延伸,支援系統、組織、人、物之間的廣泛聯接的深度網絡化應用;

第三個階段,也就是資訊化3.0階段,是以資料的深度挖掘與融合應用為特征的智慧化階,這個階段的應用模式演變為雲感覺的軟體服務化應用+雲計算和端計算的融,技術平台也發展為網際網路及其延伸所形成的人機物融合環境(雲+端)。

梅宏表示,在資訊化3.0的環境下,軟體呈現出一系列新的特性和新的形态,即網際網路化、網絡化。企業不僅基于網絡進行開發,軟體也運作在網絡之上,并通過網絡分發出去并提供服務。同時,開發模式也形成了一種基于互用、知識驅動的向上的無序到有序的螺旋增長模型,以及社群化的組織模式。中國學者稱之為網構軟體,這種軟體具有實體的自主性,對于實體之間的協同出現的湧現性、自發性、線上的演化能力,在網際網路環境下還有可信性的要求。

這種情況下,需要硬體平台需要滿足所有軟體發展的新的需求。梅宏認為,軟體定義的本質是通過虛拟化及其應用程式設計接口(api)“暴露”硬體的可操控成分,以實作硬體的按需管理。具體來說,就是将計算、存儲、網絡等it基礎資源,抽象為系統軟體對虛拟資源進行管理和調,在此基礎上,使用者可編寫應用程式,通路資源所提供的服務,進而改變資源的行為,滿足應用對資源的多樣需求。

随着軟體定義的不斷延伸,出現了軟體定義存儲(sds)、軟體定義計算(sdc)、軟體定義環境(sde)以及軟體定義資料中心(sddc)。但是,軟體定義并不是軟體用在其中,而是透過作業系統這一套的技術手段完成面向某個特定領域的軟體應用平台的建構,這些sdi的本質上都符合這兩句話,即“基礎武力資源的虛拟化、管理任務的可程式設計”。

資訊化3.0時代,企業需要管理的是海量異構的硬體資源所構成的未來,或者現在正在建構的資訊基礎設施。梅宏表示:“基礎設施需要新的資源管理機制,多樣化、領域化、個性化的管理資源需求就出現了,比如說我們規模化的資源整合,巨型虛拟機的巨型資源裝置,包括現在新的nvm,各種各樣新的裝置,gpu,還有各種微型化的物,比如說攝像頭、手機上的傳感器等,這些都要實作統一的管理都需要透過軟體建構api的方式實作虛拟化。”

以下是梅宏院士的演講實錄:

很高興再次有幸來參加中國雲計算大會,談一談我對目前資訊技術發展的認識,是以我這次用了這麼一個題目,叫作《資訊化3.0:軟體定義的時代》,這裡面有兩個關鍵詞,一個是資訊化3.0,一個是軟體定義。

首先講什麼是資訊化3.0。我們正在進入的一個新時代,而這個時代一個很重要的特征就是無處不在的軟體技術和軟體應用,正在定義這個時代的一切。軟體定義的時代就是說軟體定義在這個時代的重要性,也是這個時代很多的場景,我們很多的應用、産業,也都會實作軟體技術的深度應用。

資訊化3.0是我們正在開啟的新一波浪潮,資訊被認為是人類社會發展的第三大戰略資源,是和物資資源并列的。而所謂的資訊化就是指資訊技術在我們人類社會生活方方面面綜合應用的過程,随着資訊技術的發展,以及應用的深入和廣泛,我們可以看到資訊化應用在技術平台、管理資源和應用模式方面都在逐漸地變化,而三個方面都呈現一定的階段性特征,我想第一個階段是以上世紀九十年代中期為代表,此前我們的資訊化呈現的主要特征是以單機應用為特征的數字化階段,随着網際網路的商用,我們進入資訊化第二階段,這也是我們資訊化的第二波浪潮,我們進入了以聯網應用為特征的網絡化階段,我想我們現在,如果以2015年整體為代表,大資料的廣泛興起為代表,我以為從本世紀第二個十年的中期開始,我們正在進入以資料的深度挖掘和融合應用為特征的智慧化階段。

我們來看一看每個階段的特征。實際上第一波浪潮始之于八十年代,它是以當時的pc機進入家庭廣泛應用為标志,開始了第一波的資訊化。這時候的技術平台實際上就是個人計算機,最多到後期成為區域網路,單機的資料庫,我們使用方式是客戶進入伺服器模式,點選的應用就是部門級的資訊系統,我們文檔的處理、表格的處理。我們也可以看到我們部門級系統開始都是以最關鍵的,比如說資源管理、人事管理、工資管理、庫存管理開始,應用的模式是單機處理,資料庫與中心的區域網路模式。

九十年代中期,随着美國提出資訊高速公路建設,我們開啟了第二波的資訊化浪潮,創造了資訊技術在過去二十多年的輝煌,也快速發展。我們看到這個時候的技術平台已經從單機區域網路拓展到了廣域網和網際網路,點選應用包含了聯網式的集中電子政務、erp、電子商務等等,而且全是全域的聯網應用,應用模式打破了部門群組織固有的邊境,強調在網絡上的資訊化的共享,系統化的協同,整體進入網絡化應用。特别是随着後期網際網路應用的深入和普及,人機物之間也開始産生連結這種深度的網際網路,這時候成為資訊化2.0後期的一種重要的應用熱點。

而資訊化3.0是以資料的深度挖掘和融合應用為主要特征,我們正在進入一個智慧化的時代,這幾年人工智能熱潮、大資料熱潮充分說明這一點,而大資料的産生作為資訊技術,特别是網際網路機器延伸所帶來的這麼一個現象。一方面是摩爾定理驅動着增長,第二是移動寬待互聯所形成的人機物廣泛的互聯,技術低成本所驅動的資訊技術的無處不在的應用和萬物的數字化,還有今天會議的主題,雲模式所驅動的資料的彙聚和集中,由于這些方式實作了資料的快速增長,是以我們出現了大資料。而基于大資料、基于資料分析有這麼多成功的應用案例,也激發了人們基于資料,從中間尋找規律,萃取知識,來指導我們社會實踐、工作實踐的這麼一種成功的案例,帶來了資料應用的需求,這就進入新的時代,這個時代正在開啟。

第一波浪潮的啟動帶來的還有一個很重要的标準,就是it基礎設施的投入進入新的一波投入高峰。

在這個時代我們可以看到資料深深度挖掘和應用,網際網路機器延伸正在形成的物聯網、移動網際網路,構成人機物融合的環境,也就是雲加上廣泛的端裝置所構成的網絡環境。而典型的應用就是大資料應用,我們可以看到網際網路公司成為大資料應用的領頭羊,有各種各樣成功的網際網路公司所創造的大資料應用的成功案例,同時大資料應用也正在向傳統的領域拓展,為傳統的領域注入新的活力,當然我們可以看到這是正在開啟的一個時代。

我們的大資料應用還處于發展的初期,才剛剛起步。從應用模式上講,到底什麼是未來資訊技術當我們這一波應用的模式。我個人的基本觀點就是雲感覺的軟體服務化應用,以及雲計算和端計算,包括物聯網上的各種裝置、邊緣計算等等的融合,這會是我們未來幾十年飛機重要的應用模式。剛才吳部長也提到了,雲感覺的軟體服務化,我以為就對應支撐着吳部長講的雲的智能服務。

在這種新的環境下,我們可以看到軟體呈現出一系列新的特性和新的形态,當我們的軟體呈現網際網路式的結構、網絡化的結構,基于網絡進行開發,軟體也運作在網絡之上,通過網絡分發出去并提供服務。可以看到我們的開發模式形成了一種基于互用、知識驅動的向上的無序到有序的螺旋增長模型,同時社群化的組織模式,從使用上講,不求擁有隻求使用的服務華使用模式,這些都是新的特性的變化、新的形态。我們中國學者稱之為網構軟體,這種軟體具有實體的自主性,對于實體之間的協同出現的湧現性、自發性、線上的演化能力,在網際網路環境下還有可信性的要求。

随着人機物融合的環境,軟體技術就面臨着一系列的挑戰,從軟體技術的技術體系四個主要方面來看。一個就是傳統的靜态環境下的傳統軟體正在走向開放動态環境下的複雜軟體,從開發方法來講我們滿足功能需求為主要目标,保證正确性為主線,我們現在滿足綜合需求,從應應用上來講,隻凝練系統的共性,保證高效可靠的運作,需要凝練管理的共性,保證可靠高服務的品質運作。從單一的名額體系隻考慮系統的使用品質,需要考慮名額綜合性的使用品質,從社會品質轉向使用品質。

在這種背景下,我們可以看到過去幾十年軟體技術發展的主要驅動力就是系統的平台化,但以作業系統為代表的系統軟體的發展,就反映基于拱形凝練和沉澱的平台化過程。大家看早期的應用系統是跑在裸機之上,作業系統的出現使得我們的計算機變成了軟體機,中間件的出現使我們可以聯網、多機協同,而同樣的雲管理平台也是這麼一個走向,我們需要建構在傳統的中間件組織上建構新的雲管理系統,而這個過程就是不斷地把應用中間的共性凝練下來,形成可以複用的資源,這些東西就沉澱為平台,開發工具和應用架構也不斷地融入運作平台,戰線出開發運作平台一體化的趨勢,這幾年講的devops也呈現了這種重要的态勢。這種系統平台化一直是軟體重要發展的驅動力,是以我們說在人機物環境下它的軟體平台是什麼樣,我們可以看到在網際網路上的應用,現在這種網絡化的應用,應用的需求是多樣的,形态也是多樣的,而我們下面的服務資源有個人計算機、大型的計算機、手機終端,還有這麼多的物聯網上的各種計算裝置,海量資源的異構性,要建構這麼一個平台,就是怎麼樣凝練這種應用的共性,把下面的東西整合起來,使得大家透過一個軟體平台完成你的工作。

進一步,由于應用需求變化平台,很多應用是線上變化的,七乘二十四小時不能停機,一直要服務,應用場景也是動态多變,我們進而就提出一個要求,這個軟體平台能不能實行按需的、靈活的、深度的、定制能力,而這種能力靠什麼東西來解決?我想軟體定義就是提供了這麼一個平台按需、靈活、深度、定制的這麼一種方式。這是我講的第一部分。

關于軟體定義,我們正在說3.0需要軟體定義。大家也知道,如果我們回顧一下軟體定義這個詞,首先是從sdn開始,它最早的源頭是2008難斯坦福大學有一個基金委的項目,在這個項目裡pomi,這個項目完成了一個事情,把傳統的交換機透過軟體的方式把它變成了一個openflow的交換機,把硬體的軟體設計層加上控制層,還有上面的應用層,這個結構的分層和我們計算機系統結構是非常的一緻,這是它的興起,但這件事情出來以後,真正的軟體定義進入應用還是從雲計算開始,sdn是首先在雲計算平台裡面大家了成功應用。應該說在某種意義上sdn正在重新定義傳統的網絡架構,按照idc的估計,2016年全球sdn市場大概是37億美元,這是它大體上的估計劃分。

如果我們回顧來看,軟體定義的技術原理它的技術本質是什麼。本質上而言,我覺得它就和我們計算機作業系統,處理計算裝置、硬體裝置和上層應用的關系是一樣的,它透過一種api,對底層的基礎設施、網絡裝置可以進行虛拟化,進而可以進行任意的程式設計,在這個基礎之上你就可以實作新型的網絡協定,新型的top結構,而不需要通過應用邏輯本身去改變網絡裝置本身。通過一個控制器來實作轉發的規則,通過api對相關的flowtable程式設計,根據業務建構虛拟網絡并實作按需的資源排程。

這個場景似曾相識,我們回過看看計算機的發展,早期的計算機就是硬體計算機,計算機作業系統的出現使得我們的計算系統能夠被各個行業當成通用的裝置來使用。每個使用者看到的計算機是一台軟體計算機,是一台作業系統定義過的計算機。作業系統幹什麼?我們給一個學術的定義,它是向下管理硬體資源,控制程式運作,向上改善人機界面,為應用程式提供支援的系統軟體層。給你一個api你可以調用很多東西,作業系統越變越大,也是這麼變過來的。而作業系統的目标本質上就是要追求更為高效的,把硬體資源所提供的計算能力發揮出來,透過軟體技術實作靈活高效可信統一的虛拟資源的管理,這一直是我們作業系統發展的重要驅動力。在某種意義上也正是因為以作業系統為代表的系統軟體平台的不斷發展,帶來了應用軟體市場的快速繁榮。

大家可以試想,如果任何一個應用系統是建構在那麼多紛繁複雜的硬體裝置基礎之上,建構在不同的網絡提供商所提供的網絡之上,你可以設想你的開發工作量是多大,你的開發複雜度多大,而這種軟體平台使得你把這些東西都可以屏蔽掉,建構一個新的平台,這是我們作業系統實作的一個新目标。

是以我們回過來看,從作業系統的角度來看軟體定義它是什麼呢?從使用者的角度,作業系統本質上就是軟體定義的計算機,作業系統定義了計算機,從軟體研究的角度,作業系統的很多技術原理,包括分層結構,實際上已經展現了軟體定義技術概念的一個集大成。是以說我的了解,軟體定義的本質是什麼?就是把原有的一體化的硬體設施打破,基礎硬體進行虛拟化,不同的硬體根據你的力度提供标準化的基本功能,透過一個可程式設計的流程管控軟體,來控制基本功能,提供開放、靈活、按需的智能服務。透過虛拟化及其應用程式設計接口,暴露硬體的可操控成分,來實作硬體的按需組合和按需管理。

基本的本質,包括存儲資源、計算資源、網絡資源還有其他各種資源,我們把硬體抽象成虛拟資源,然後用系統軟體對它進行管理和排程,然後再向上提供一層api,管理任務的可程式設計,在虛拟化基礎之上,使用者就可以編寫他自己的應用程式。反問所有的資源提供的服務,進而改變資源的組合,改變資源的行為,滿足對資源的多樣性的需求。随着sdn的成功,大家可以看到出現了sds,各種各樣的軟體定義開始出現,軟體定義的存儲,軟體定義的計算,軟體定義的環境,也就說軟體定義一切,但我以為軟體定義并不是軟體用在其中,而是又透過作業系統這一套的技術手段完成我們面向某個特定領域軟體應用一組平台的建構,這些sdi的本質上都符合這兩句話,基礎武力資源的虛拟化、管理任務的可程式設計。

回到我們講的3.0時代。3.0時代我們需要管理的是海量異構的硬體資源所構成的未來或者現在正在建構的資訊基礎設施。你看我們的雲、我們的管,到雲有各種新型的裝置,我們管多網融合的複雜環境,用戶端、物聯網、網際網路,各種各樣的計算裝置,還有物,甚至還有人,這麼多的資源怎麼能夠實作一個有效的管理。基礎設施就需要新的資源管理機制,多樣化、領域化、個性化的管理資源需求就出現了,比如說我們規模化的資源整合,巨型虛拟機的巨型資源裝置,包括現在新的nvm,各種各樣新的裝置,gpu,還有各種微型化的東西,比如說攝像頭,包括手機上的傳感器等等,這些東西要實作統一的管理都需要透過軟體建構api的方式實作虛拟化。

完成這些以後,在這個環境下我們就實作軟體定義,把對在的資源虛拟化,通過雲和端的海量異構硬體資源進行全面虛拟化,所有資源在抽象層次上趨于一緻,這就是我們面臨的很大的挑戰,這樣的作業系統很大,怎麼把它管理起來。我們在過程中間,同樣軟體定義還面臨其他的挑戰,比如說結構的問題,怎麼确定受管元素的合理粒度并合理、安全地開放api,怎麼界定軟硬體的功能配置設定,并實作組裝配置的相關元素。

第二是安全性問題,軟體定義本質上是對原來緊密不可分割的硬體進行軟化,是以說由于這種東西帶來開放性、靈活性的同時,就有可能帶來安全的漏洞,特别對工業來講就極為重要。

第三品質問題,由于軟體定義在已有資源上加上一個操控的虛拟層,怎麼樣能夠平衡管理靈活性和虛拟化之後的性能損耗?怎麼降低軟體實作的複雜性和故障率,能有效定位到你的故障。

還有互操作性問題,大量的廠商提供的同類異構裝置,很多裝置需要編到一起。

進一步看,軟體定義設施,可能目标也在變化,過去我們的方式,已有的硬體構造一個軟體平台,支撐上面不同的應用,一旦發生硬體的變化,那我上面的平台,我上面的應用都需要進行相應的調整,是軟體跟着硬體走,有沒有可能産生一種新的變化,軟體和應用能不能不變,硬體設施發生變化,也就說軟體平台具有預測和管理未來硬體資源的能力,我們從硬體為核心轉到以平台為中心呢?透過深度定制的方式來解決這個。現在我們可以看到這種方式還是可以探讨已經有人在嘗試,美國darpa2015年啟動一個brass項目,建構這樣一個基礎設施就希望适應下面各種變化,硬體變化不影響軟體平台和上面的應用,我以為這也是軟體基礎設施化的一個重要的标志。

更進一步的趨勢,從軟體定義,僅僅對硬體資源的虛拟化正在走向對全棧軟體資源的軟體定義,有沒有可能對軟的、對資料的、應用的,也實作新軟體定義,我們可以看到這種趨勢。比如說泛化智慧城市,智慧城市作業系統通過軟體定義手段實作城市各類資訊、實體基礎設施的開放共享和智能化的互聯互通。

第二個例子數字的開放共享,這是我們國家現在講的主題,大資料行動發展綱要有一個今年建構資料目錄,明年統一共享,大家可以看到大資料資訊孤島阻礙了資料開放共享,已經形成一個基本的共識,就是不願意、不敢、不容易,涉及到很多方面的因素,成本很高,怎麼能夠建構這麼一個東西,是以我們也提出了一種軟體定義的方案,透過一種自适應的資料總線,加上系統的智能識配,對已有的應用系統,把它的資料互聯互通搭起來。

前期做過一些嘗試,比如上個月,我們在貴陽釋出了一個結果,用了一個月時間把整個貴陽市的五十多家機關的三百多個系統的兩千多個功能進行了梳理,形成一千多個活化的資料目錄品質,用了一個月時間,實作了貴陽市政府資料資源的全量的活化,而這項工作是在沒有原來系統廠商的支援,沒有資料庫的開放,也缺乏資料支點的前提下,用一種智能學習的方式來完成的。

這一步大家談的人工智能需不需要軟體定義,人工智能現在正是資料驅動的算法智能階段,軟體平台怎麼幫助人工智能應用支撐并允許它的深度定制。進一步說,我們能不能面向智能應用建構所謂的作業系統呢?咱們可以看到,現在一些智能的架構已經開始嘗試這麼一個路,共性凝練沉澱。

在這麼一個時代,我把它稱之為軟體定義的時代,基本的目标就是萬物皆可互聯,一切均可程式設計。這個時代還有多遠?可能需要我們學術界、産業界各方面共同的努力,打造未來世界的泛在的、可程式設計的、按需使用資訊基礎設施。謝謝大家!預祝我們的會議圓滿成功!

原文釋出時間為:2017年6月14日 

本文作者:作者:趙東

本文來自雲栖社群合作夥伴至頂網,了解相關資訊可以關注至頂網。

繼續閱讀