2009年10月30日 星期五

Virtual Box 的網路設定簡介


在Virtual Box上建立的作業系統,該系統的網路連接模式會受到Virtual Box的網路設置所影響,Virtual Box 3.0.8的版本對網路設置共有四種連接模式:
  1. Not Attached(未指定)
    有網卡但沒有連接。
  2. NAT(Network Address Translation 網路地址轉換)
    這是一種IP封包通過路由器或防火牆時重寫IP或目的地位址的技術,這種技術被普遍使用在有多台主機但只通過一個公有IP地址的私有網路中。但一個具有NAT功能的路由器下的主機並沒有建立真正的端對端連接,也就是單向傳輸,除非NAT路由器作一些具體的設定,否則送來的封包將不能到達正確的目的地址。
    這也是為何建立FTP時,即便虛擬機器能正常上網,但對方仍無法取得該虛擬機器真正的對外IP。
  3. Bridged Networking(橋接網路)
    實體機器會透過DHCP取得新內部的IP,因此會有兩個對外實體IP ,但虛擬機器在設定上必須選取實體網卡。
    就以小葉架設的FTP為例,小葉在虛擬機器的網路設定選取實體網卡,所以當他以撥接的方式連到網路後,他的對外IP會與實體機器的對外IP不相同。
  4. Internal Networking
    可以讓不同的虛擬機器互相溝通,但無法連接外部網路。
  5. Host-Only Networking
    類似Internal Networking的擴充,透過建立一個軟體網卡,形成一個虛擬網路,讓虛擬機器不僅能互相溝通,也能與實體機器進行溝通。
    但就如同字面上的意思,該模式的虛擬網路區域限定為本機,所以仍無法連接外部網路。
或許以下圖解對上述模式會有更清楚的解釋:
























參考網站:

2009年10月25日 星期日

專題研究企劃書 RSS改良



專題研究企劃書
RSS功能改良
簡宗德 2009/10/24
一、概要
RSS是一種消息訂閱規範,屬於XML其中一個成功的應用,用於部落格、各大網站新聞之類的經常更新資料的網站,有點類似電子報紙訂閱的功能。

二、研究動機
目前要使用RSS的功能,使用者除了要安裝該軟體之外,資料提供者也必須要有RSS服務,方可進行資料的傳輸,倘若要存取的網站並沒有RSS服務,則我們也無法取得該網站的資料。但並非所有網站都有RSS服務,就拿學校網站當作例子:學校發布一個公告,並非都是透過導師來轉達給學生,再加上我們不像以前高中,整天都會待在學校,於是學校只能透過網站來張貼公告。但這種發布方式會產生一種問題,也就是非即時性,要是學生都不瀏覽學校網站,不僅學生會錯過一些對自己相關的重要公告,也會影響學校的行政效率。

RSS的訂閱功能固然方便,但並非訂閱網站的所有內容都是我們有興趣的,在這裡同樣以學校作為例子:學校大大大小的公告都發布在網路上,有些是重大公告,卻也有一些是繁雜的內容。雖然現有的RSS軟體可以設定更新頻率,但要是更新的內容總是一些自己毫無興趣的事物且又不停的產生通知訊息,相信使用者也會感到厭煩。

三、研究方向
如果將現有的RSS進行改良,將它的服務範圍擴大到沒有RSS服務的網站上,只要使用者把該網站加入書籤,一旦網站新增文章,我們也能在不瀏覽網站的情況下得知訊息,有點類似使用MSN程式時,當使用者收到信件後會彈出相關訊息的功能。因為RSS是以XML為基礎,所以我們必須要先了解XML的格式。再者,要是網站無法加入RSS訂閱,那我們該如何將原始碼轉譯成RSS能接受的格式。

在檢閱更新方面,除了設定更新頻率之外,是否能再加入過濾關鍵字的功能,讓使用者自行選擇需要更新的內容,而並非是照單全收;除了存取網摘的功能外,是否也能加入發布訊息的功能呢?網站架設者加入特殊語法後,能對RSS內的群組發布一則消息,而群組成員便是將該網站加入書籤的使用端,並且忽略使用端所設定的過濾關鍵字。

更進階的使用方式:如果選取的網站需要使用者登入,我們是否能幫使用者自動登入?一般來說,當我們鍵入需要使用者登入的網址時,網址會自動轉址到登入頁面,那麼我們是否能判斷當書籤頁面產生轉址效果時,它會自動輸出使用者帳號及密碼進行登入。一旦登入成功,便會再次轉址到書籤頁面,要是輸入帳號密碼錯誤,便會彈出訊息通知使用者。

四、預期效果
讓RSS使用者不再局限於RSS服務的網站,在不瀏覽網站的情況下更容易取得自己所需的訊息,並更進一步連接網站與瀏覽者的關係。

五、參考網站

2009年10月23日 星期五

Ubuntu在一般使用者下使用root權限開啟檔案總管的小技巧

在使用Ubuntu作業系統後,才知道它不能使用root的身份進行登入,僅能透過終端機的sudo的指令來使用root的權限,一旦關閉終端機,則又會回到一般的使用者權限。對於Linux指令不熟悉的我來說,光是移動root權限下的檔案就十分困擾,於是我在網路上找到用root開啟檔案總管的方法:

2009年10月14日 星期三

第五週的小組討論

本次討論的主題為虛擬機器(virtual machine)。這次討論的重點為:
  • 虛擬機器上的os與實際機器的os是共用同一個硬體資源,但彼此之間除非用特殊程式,否則彼此獨立。所以即使vm1的使用者中毒,也不會影響到其他使用者。
  • 對於實際機器而言,虛擬機器只是一個程式,在兩者均為忙碌狀態下,可能會造成虛擬機器本身被賦予的資源量遭到緊縮,甚至程式關閉。
  • 在虛擬機器啟動時,虛擬機器仍會出現開機的狀態,但不會有載入程式的現象。這是因為實際機器在開機時就已載入程式。
  • 實際機器與虛擬機器能共用同一裝置設備,例如滑鼠、鍵盤、光碟機。若外部插入一個隨身碟,則實際機器與虛擬機器都會出現"讀取到外部裝置"的訊息。
還有阿鴻提出了一個 "virtual box的使用" 的想法:
  1. 在實際機器上使用linux作業系統,之後透過virtual box建立兩個虛擬機器L1、L2。
  2. 在L1、L2的平台上同時建立FTP。
  3. 如何讓外部使用者登入L1、L2並使用該平台的FTP,
  4. 一旦外部使用者過多時,系統會自動分配外部使用者到哪一個虛擬機器上,避免一方閒置而另一方忙碌。
在不考慮實際機器的性能下,其關鍵點應該是如何將一個進入主機的IP分成兩個,以提供兩個虛擬機器。而且在虛擬機器之間,需要使用中介軟體來進行分配與監視。除此之外,還需要登入系統以及資料庫系統來管理使用者的資料。

2009年10月8日 星期四

Cloud computing 翻譯 part1

(目前進度是寫到這裡,後半部會在下禮拜以前發表。)


花了兩天的時間,終於看完整篇原著,即便使用雅虎線上段落翻譯,也只能瞭解大略內容。於是又花了不少時間,以邊查字典邊閱讀的方式重新讀過。以下我以粗略的方式解釋整篇原著的段落大綱以及寫下我的心得。

第一至三段:
「The Greek Myths tell of creatures plucked from the surface of the Earth and enshrined as constellations in the night sky. Something similar is happening today in the world of computing. Data and programs are being swept up from desktop PCs and corporate server rooms and installed in “the compute cloud.”

Whether it’s called cloud computing or on-demand computing, software as a service, or the Internet as platform, the common element is a shift in the geography of computation. When you create a spreadsheet with the Google Docs service, major components of the software reside on unseen computers, whereabouts unknown, possibly scattered across continents.

The shift from locally installed programs to cloud computing is just getting under way in earnest. Shrink-wrap software still dominates the market and is not about to disappear, but the focus of innovation indeed seems to be ascending into the clouds. Some substantial fraction of computing activity is migrating away from the desktop and the corporate server room. The change will affect all levels of the computational ecosystem, from casual user to software developer, IT manager, even
hardware manufacturer.」

這幾段主要是提到當我們對雲端運算發出要求時,實際進行運算的實體設備不一定會在我們看得到的地方,透過網路,說不定在橫跨大陸的另一端進行。

對於第一段以希臘神話的星座命名的例子來呼應雲端運算,不知道是我文章沒看懂,還是英文不夠好,總覺得這一段內容似乎不知所云的樣子。

接下來以Google Docs來舉例,根據維基百科-Google Docs的資料,它是一種文書處理跟電子製表的線上程式。其中使用者透過Web介面、電子郵件或是Google檔案來建立文檔,而預設情況是該文檔將會儲存在Google的伺服器上,跟雲端運算的「透過網路,由服務端提供軟體服務讓用戶端使用」的特色相似。不過我沒使用過該程式,所以也不清楚其程式的實用性。

第三段提到的Shrink-wrap software是指壓製為光碟拆卸的授權軟體,雖然這一類的軟體依然控制著市場,但是雲端運算的出現,將會重大衝擊整個運算生態。但事實上,目前也有不少的軟體經銷商以開放下載有時限性或鎖住部份功能的主程式,再以購買金鑰、序號來開啟程式所有功能的方式進行銷售。

第四段:
「In a sense, what we’re seeing now is the second coming of cloud computing. Almost 50 years ago a similar transformation came with the creation of service bureaus and time-sharing systems that provided access to computing machinery for users who lacked a mainframe in a glass-walled room down the hall. A typical time-sharing service had a hub-and-spoke configuration. Individual users at terminals communicated over telephone lines with a central site where all the computing was done.」

這一段主要是講述五十年前,類似雲端運算的概念就已出現。當時電腦的相關設備都是放置在一個大房間內,連接許多的終端機並加以管理,在電腦網路知識掃盲的文章裡,是以當時飛機訂票系統為例。

至於Time-Sharing System分時系統,就是當時作業系統對資料的處理方式。其處理方式就是將各處終端機所傳送過來的程序,均以相等的CPU工作時間進行分配切割,如果無法於指定時間內完成,則再重新進入佇列裡排隊等待。

第五至六段:
「When personal computers arrived in the 1980s, part of their appeal was the promise of “liberating” programs and data from the central computing center. ( Ted Nelson, the prophet of hypertext, published a book titled Computer Lib/Dream Machines in 1974.) Individuals were free to control their own computing environment, choosing software to suit their needs and customizing systems to their tastes.
But PCs in isolation had an obvious weakness: In many cases the Sneakernet was the primary means of collaboration and sharing. The client-server model introduced in the 1980s offered a central repository for shared data while personal computers and workstations replaced terminals, allowing individuals to run programs locally.」

到了八零年代,個人電腦的出現,讓使用者能控制自己想要的操作環境,選擇自己所需的要軟體及元件,脫離中央運算中心的集中管理。

但就因為彼此獨立,於是資料傳輸便形成個人電腦的明顯問題,而當時便是以Sneakernet作為解決手段。利用用戶端伺服器提供一個中央儲存庫來共享資料,即便更換了用戶端所在位置,也能在當地執行程式。

至於Sneakernet人工網路,應該是指將磁盤、磁帶或儲存供應商提供設備從客戶直接拷貝,再帶到數據中心進行備份。

第七段:
「In the current trend, the locus of computation is shifting again, with functions migrating outward to distant data centers reached through the Internet. The new regime is not quite a return to the hub-and-spoke topology of time-sharing systems, if only because there is no hub. A client computer on the Internet can communicate with many servers at the same time, some of which may also be exchanging information among themselves. However, even if we are not returning to the architecture of time-sharing systems, the sudden stylishness of the cloud paradigm marks the reversal of a long-standing trend. Where end users and corporate IT managers once squabbled over possession of computing resources, both sides are now willing to surrender a large measure of control to third-party service providers. What brought about this change in attitude?」

整段文章太長了,即便翻譯完成,也不知道整段文章想要表達什麼意思。整體上應該想傳達個人電腦可能與許多個伺服器同時聯繫,但又不回到以前的分時系統的架構上,於是雲端運算的模型就形成了一種趨勢。那些終端用戶與IT企業經營者曾為了運算資源的財產權進行爭執,但現在雙方卻願意放棄控制權,轉而由第三方的服務供應商管理,當中態度上出現了什麼變化呢?

感覺有點像是對前面幾段做出總結,並且幫文章後半部對雲端運算的分析做鋪路。

第八段:
「For the individual, total control comes at a price. Software must be installed and configured, then updated with each new release. The computational infrastructure of operating systems and low-level utilities must be maintained. Every update to the operating system sets off a cascade of subsequent revisions to other programs. Outsourcing computation to an Internet service eliminates nearly all these concerns. Cloud computing also offers end users advantages in terms of mobility and collaboration.」

這段是講述個人電腦對設備維護的不方便。像是軟體的安裝、配置,以至於關注往後的更新以及新版本的發行;維護作業系統與較為低階的電腦設備裝置;以及作業系統的更新,可能對其他程式產生一連串的影響。但若是透過外包給網路伺服器便可排除這些問題。

這就是將電腦設備交給服務端管理,小從軟體的更新,大至整個電腦的維護,而用戶端只要使用所需的「服務」即可。

第九段:
「For software vendors who have shifted their operations into the cloud, the incentives are similar to those motivating end users. Software sold or licensed as a product to be installed on the user’s hardware must be able to cope with a baffling variety of operating environments. In contrast, software offered as an Internet-based service can be developed, tested, and run on a computing platform of the vendor’s choosing. Updates and bug fixes are deployed in minutes. (But the challenges of diversity don’t entirely disappear; the serverside software must be able to interact with a variety of clients.)」

當一個軟體被安裝在用戶的硬體時,軟體開發商必須要能夠應付用戶們不同的作業環境所會衍生出的各種困難問題。可是將軟體開發商移動至雲端運算中,他們可以在自己所選擇的運算平台上開發、測試、執行軟體,並且能在短時間內進行更新及維護。但由於透過網路,必定能與客戶互動,於是他們面對的挑戰仍不會消失。

這也是類似上一段所提到的內容,只是把用戶端的角度轉換為軟體開發商。其實,「為何我安裝後出現一些錯誤訊息?」、「為何有些功能我無法使用?」等類似的問題常常在軟體討論區裡出現。或許軟體本身就有bug,也或許是用戶自身的操作問題,但無論如何,當客戶買下該軟體時,解決問題本身就是軟體開發商的義務。倘若每位客戶的問題均不相同,造成軟體開發商針對各個問題都做出零零散散的更新,卻又會回到前面的敘述,造成用戶的不便。

結合以上兩段原文內容,我認為這是否能成為抑止盜版軟體的手段?由於用戶端的實際電腦設備在服務端後方,以致用戶端使用該軟體的手段只能透過服務商的提供;軟體開發商也只將軟體授權於服務端,並與服務端一同管理該項軟體,也無須考慮軟體問世之後所出現的盜拷問題,因為「使用軟體」這項服務只能在服務端取得。當然這也會出現個人資料以及服務端控制權是否過大的爭議。

第十段:
「Although the new model of Internet computing has neither hub nor spokes, it still has a core and a fringe. The aim is to concentrate computation and storage in the core, where highperformance machines are linked by high-bandwidth connections, and all of these resources are carefully managed. At the fringe are the end users making the requests that initiate computations and who receive the results.」

雲端計算的目標是在核心內進行運算與儲存,透過高頻寬連接著高性能的機械設備,並且所有的資源都被小心管理。遠端用戶只需在核心邊緣發出請求以及接收運算結果即可。

不過關於高頻寬,或許這會是雲端運算是否能普及化的最大問題了。

第十一至十二段:
「Although the future of cloud computing is less than clear, a few examples of present practice suggest likely directions:

WordStar for the Web. The kinds of productivity applications that first attracted people to personal computers 30 years ago are now appearing as software services. The Google Docs programs are an example, including a word processor, a spreadsheet, and a tool for creating PowerPoint-like presentations. Another undertaking of this kind is Buzzword, a Web-based word processor acquired by Adobe Systems in 2007. Another recent Adobe product is Photoshop Express, which has turned the well-known image-manipulation program into an online service.」

這兩段是舉出當前類似雲端運算的例子:WordStar便是從三十年前一直應用到現在的軟體服務。但因為我沒使用過WordSta,所以我也不清楚它與雲端運算之間有何關聯,只知道它是早期一種文書編輯處理軟體;Google Docs本文前面就已簡單介紹,在這裡就不再多作討論;Adobe System於2007年收購Buzzword這款線上文書處理軟體,以及最近把知名的圖片編輯軟體轉變成線上軟體的Photoshop Express

第十三段:
「Enterprise computing in the cloud. Software for major business applications (such as customer support, sales, and marketing) has generally been run on corporate servers, but several companies now provide it as an on-demand service. The first was Salesforce.com, founded in 1999, offering a suite of online programs for customer relationship management and other businessoriented tasks; the company’s slogan is “No software!”」

關於雲端運算的運算企業。目前許多的商業應用軟體通常都在自家的公司伺服器上執行,但現在有部份公司卻是提供該項服務。Salesforce.com就是第一家提供服務的網站。他們提供以客戶關係管理製訂的線上程式與其他作為商業用的任務。

YouTube-什麼是「雲端運算」?


根據維基百科-Salesforce.com的資料,該網站於1999年由俄羅斯裔美國人 馬克˙貝尼奧夫 所創立。他主張以簡易網站提供企業應用程式的概念,於是他被稱為「軟體終結者」。該網站也提倡雲端運算的理念。

客戶關係管理是指企業運用完整資源,全面瞭解每位獨立客戶,並透過所有管道與客戶互動,而達成提昇客戶終身價值之目的。

第十四段:
「Cloudy infrastructure. It’s all very well to outsource the chore of building and maintaining a data center, but someone must still supply that infrastructure. Amazon.com has moved into this niche of the Internet ecosystem. Amazon Web Services offers data storage priced by the gigabyte-month and computing capacity by the CPU-hour. Both kinds of resources expand and contract according to need. IBM has announced plans for the “Blue Cloud” infrastructure. And Google is testing the App Engine, which provides hosting on Google server farms and a software environment centered on the Python programming language and the Bigtable distributed storage system.」

關於雲端運算的基礎設備,雖然是外包給其他的數據中心進行維護,但仍然還是需要有人提供該項設備。這段舉出了下列例子:Amazon.com亞馬遜公司提供了該項設備,Amazon Web Services提供了資料儲存、計算的月租服務;IBM宣佈了一項「Blue Cloud」的雲端運算基本設施計畫;以及Google開始測試App引擎
其實今年年初IBM公司已經宣佈與Amazon Web Services合作。這個消息,將會為雲端運算帶來一計強心針。

參考資料:

2009年10月4日 星期日

Market-Oriented Cloud Computing 翻譯文

"Market-Oriented Cloud Computing"這篇文章我是使用雅虎線上段落翻譯,該文章已上傳至協作平台niucp_03中,如有需要可自行下載。

其翻譯文已對原著中部份錯字完成訂正,且本文並無原著中的圖片、表單、參考文獻,單就文章內容進行翻譯。