2013年1月12日 星期六

第17週作業


何謂IP分享器
一般而言, 電腦要能上網, 必須先要有一組可在網際網路上供其他電腦識別的IP位址, 這樣在下載資料的時候, 才能知道要將資料下載到哪裡. 而當您跟ISP(Internet Service Provider)公司, 如中華電信, Seednet, 台灣固網等申請網路時, , 如果他們只提供一個IP位址給您, 那您就只有一台電腦可以上網了. 但以小型辦公室或家庭而言, 通常需要2, 3台電腦能同時透過一條網路上網, 以節省網路資源. 而這時您就會需要IP分享器了. 顧名思義, IP分享器可將一個IP, 再分為好幾個虛擬IP, 讓您可好幾台電腦都獲得虛擬IP, 可同時上網. 一般而言, IP分享器可分出253個IP, 也就是最多可253台電腦同時上網.
以外觀而言, IP分享器通常會有一個WAN port(接孔)和1~4個不等的Lan port. WAN port通常接到ADSL modem或cable modem, 而Lan port則是接到PC電腦. IP分享器會將WAN port的IP分享給LAN port的電腦使用. 一般IP分享器接到LAN port的電腦會獲得一個虛擬IP, 也就是俗稱的假IP, 而這個網段通常是192.168.X.X, 最常見的是192.168.0.X與192.168.1.X. 這個IP網段是保留的網段, 在實際網際網路裡並不能使用, 也就是在網際網路上, 其他電腦無法根據虛擬IP找到您的電腦. 舉例來說, 如果A, B電腦皆是透過IP分享器上網, 當網際網路上的其他電腦查看A, B電腦的IP位址時, 會發現A, B電腦的IP位址是相同的, 因為A, B電腦透過 同一台IP分享器連上網路, 但當開始傳輸資料給A, B電腦時, 資料會先傳到IP分享器, 再由IP分享器判斷該資料是要送到A電腦, 或B電腦.

IP分享器功能和集線器(HUB)類似, 但是IP分享器通常加上了簡單處理器, 可處理撥號(PPPoE)及接通internet等功能, 並具備有DHCP Server(動態IP指派功能), 讓你可以多台PC來分享一個IP. 市面上所謂的路由器, 都有IP分享器的功能.
再以操作面而言, 如果您是透過IP分享器上網, 所有的上網所需資訊, 如ADSL的帳號密碼, 或固定IP位址, 閘道器等, 都可設定在IP分享器裡, 但如果您使用的 是集線器(Hub)或交換器(switch), 由於其沒有IP分享的功能, 上網的資訊就必須個別的設定在您的電腦上了. 例如: 中華電信的ADSL提供八個IP, 如果安裝集線器就只有八部電腦可以同時上網, 而且每台電腦必須設定ADSL帳號密碼和PPPoE撥號軟體, 且要上網前必須先撥號, 但是若安裝了IP分享器, 理論上可以讓254部電腦同時上網, ADSL帳號密碼設定在IP分享器裡, 其他電腦不用再另外設定網路資訊, 開機就可直接上網.

2012年12月27日 星期四

筆記



















第十五周作業+筆記


匯流排仲裁簡介
   系統中多個設備或模組可能同時申請對匯流排的使用權,為避免產生匯流排衝突,需由匯流排仲裁機構合理地控制和管理系統中需要佔用匯流排的申請者,
在多個申請者同 時提出匯流排請求時,以一定的優先演算法仲裁哪個應獲得對匯流排的使用權。匯流排判優控制按照仲裁控制機構的設置可分為集中控制和分散控制兩種。
其中就集中控制而 言,常用的匯流排仲裁方式有:菊輪鍊仲裁、二維仲裁、同步通信方式、非同步通信方式和半同步通信方式。
  連接到匯流排上的功能模組有主動和被動兩種形態,CPU可以做主方也可以做從方,而存取器模組只能用作從方。主方可以啟動一個匯流排週期,
而從方只能響應主方的請求。對多個主設備提出的佔用匯流排請求,一般採用優先順序或公平策略進行仲裁。
仲裁方式分類
  按照匯流排仲裁電路的位置不同,仲裁方式分為集中式仲裁和分散式仲裁兩類:
  1.集中式匯流排仲裁的控制邏輯基本集中在一處,需要中央仲裁器,分為鏈式查詢方式、計數器定時查詢方式、獨立請求方式;
  (1) 鏈式查詢方式
  鏈式查詢方式的主要特點:匯流排授權信號BG串列地從一個I/O介面傳送到下一個I/O介面。假 如BG到達的介面無匯流排請求,
則繼續往下查詢;假如BG到達的介面有匯流排請求,BG信號便不再往下查詢,該I/O介面獲得了匯流排控制權。
離中央仲裁器最近 的設備具有最高優先順序,通過介面的優先順序排隊電路來實現。
  鏈式查詢方式的優點: 只用很少幾根線就能按一定優先次序實現匯流排仲裁,很容易擴充設備。
  鏈式查詢方式的缺點: 對詢問鏈的電路故障很敏感,如果第i個設備的介面中有關鏈的電路有故障,那麼第i個以後的設備都不能進行工作。
查詢鏈的優先順序是固定的,如果優先順序高的設備出現頻繁的請求時,優先順序較低的設備可能長期不能使用匯流排。
  (2)計數器定時查詢方式
  匯流排上的任一設備要求使用匯流排時,通過BR線發出匯流排請求。中央仲裁器接到請求信號以後,在 BS線為“0”的情況下讓計數器開始計數,
計數值通過一組位址線發向各設備。每個設備介面都有一個設備位址判別電路,當位址線上的計數值與請求匯流排的設備 位址相一致時,該設備 置“1”BS線,獲得了匯流排使用權,此時中止計數查詢。
  每次計數可以從“0”開始,也可以從中止點開始。如果從“0”開始,各設備的優先次序與鏈式查詢法相同,優先順序的順序是固定的。
如果從中止點開始,則每個設備使用匯流排的優先順序相等。
  計數器的初值也可用程式來設置,這可以方便地改變優先次序,但這種靈活性是以增加線數為代價的。
  (3)獨立請求方式
  每一個共用匯流排的設備均有一對匯流排請求線BRi和匯流排授權線BGi。當設備要求使用匯流排時,便發出該設備的請求信號。
中央仲裁器中的排隊電路決定首先回應哪個設備的請求,給設備以授權信號BGi。
  獨立請求方式的優點:響應時間快,確定優先響應的設備所花費的時間少,用不著一個設備接一個設備地查詢。
其次,對優先次序的控制相當靈活,可以預先固定也可以通過程式來改變優先次序;還可以用遮罩(禁止)某個請求的辦法,不回應來自無效設備的請求。
  2.分散式仲裁不需要中央仲裁器,每個潛在的主方功能模組都有自己的仲裁號和仲裁器。當它們有 匯流排請求時,
把它們唯一的仲裁號發送到共用的仲裁匯流排上,每個仲裁器將仲裁匯流排上得到的號與自己的號進行比較。
如果仲裁匯流排上的號大,則它的匯流排請求不予 回應,並撤銷它的仲裁號。最後,獲勝者的仲裁號保留在仲裁匯流排上。
顯然,分散式仲裁是以優先順序仲裁策略為基礎。


2012年11月10日 星期六

HW-1.用筆記上的end-to-end與point-to-point的圖,利用該圖的概念找出實際例子 2.何謂 encapsulation請解釋

1.用筆記上的end-to-end與point-to-point的圖,利用該圖的概念找出實際例子
end-to-end
         端到端流程是從客戶需求端出發,到滿足客戶需求端,提供端到端服務,端到端的輸入端是市場,輸出端也是市場。這個端到端必須非常快捷,非常有效,中間沒有阻礙,流程可以很順暢。若達到這麼快速的服務,可以降低許多成本的問題。其實,端到端的改革就是進行內部最簡單的管理體系的改變,形成最精簡的流程。
EX:
    坐火車從台南直達台北,中間沒有停靠任何城市

point-to-point
           點對點通訊協定 (PPP) 是一組標準的通訊協定,可讓不同廠商的遠端存取軟體交互運作。啟用 PPP 的連線可以利用任何產業標準的 PPP 伺服器撥入遠端網路。PPP 從其它廠商所出品之合乎 PPP 標準的遠端存取軟體接收呼叫,並且提供網路存取權。PPP 標準也容許使用舊標準 (如 SLIP) 無法使用的進階功能。PPP 支援數種驗證方法及資料壓縮與加密。藉運用 PPP 的大部份功能,整個登入順序將可予以自動化。PPP 還支援多種 LAN 通訊協定。您可以使用 TCP/IP 或 IPX 作為網路通訊協定。在 Itanium 型版本的 Windows 作業系統上無法使用 IPX/SPX 通訊協定。PPP 是用於安全虛擬私人綱路 (VPN) 連線之 點對點通道通訊協定 (PPTP) 及 第二層通道通訊協定 (L2TP) 通訊協定的基礎。PPP 是大多數遠端存取計算的主要標準。

EX:坐區間車,每個站都要停

2.何謂 encapsulation請解釋
       封裝是物件導向中四大特色之一,簡單來說封裝就是適度的將資訊隱藏(Information Hiding),避免外界不當使用。在抽象化的過程,善加將定義類別中的屬性跟方法封裝,有利於日後系統維護時造成的許多不必要的問題。

封裝手法:提供受控制的間接操作取代不受控制的直接存取。在系統中最怕的就是不受控制的狀態發生,這對日後的維護非常頭疼,邏輯錯誤在龐大的程式當中要找出來,有時還真的像是大海撈針。

封裝最主要的兩個優勢:

1.避免不必要的資料存取現象發生。利用封裝可以適度的將資料進行適度資訊隱藏。如此避免不必要的存取,進而發生問題。
2.適度將製作細節封裝可以降低ripple effect(漣波效益),避免日後修改一問題所帶來的連帶效應過大。如此在日後可增加系統的可擴充性、易維護性。

2012年11月3日 星期六

HW 1.Cookie產生的隱私權與法律問題 2. A.P2P架構筆記(3) 的式子用不等式求出 B.把數字或上網收詢數據帶入 P2P架構筆記(3) 的式子 ,並畫出CS架構與P2P架構的圖


1.Cookie產生的隱私權與法律問題
           Cookie是一種能夠讓網站伺服器把資料儲存在客戶端的硬碟,或是由客戶端的硬碟取出資料的一種技術,Cookie能夠追蹤客戶端在網站上的移動路徑。cookie儲存於您的電腦或流動裝置中的小型文字檔案,系統會在您後續瀏覽網頁時擷取cookies。H&M使用cookies以提升及簡化瀏覽程序,我們不會使用cookies儲存個人資料,亦不會向第三方透露資訊。 Cookies可分作兩類:永久cookies及暫存cookies(即工作階段cookies)。永久cookies會以檔案形式儲存於您的電腦或流動裝置中少於12個月;工作階段cookies則只作暫時儲存,在您關閉瀏覽器工作階段後隨即消失。我們會使用永久cookies儲存您的起始頁面選擇。如您登入時選擇「記住我」,我們亦會使用永久cookies儲存您的資料。此外,我們會使用工作階段cookies,方便您使用產品篩選功能,以及檢查您有否登入。


可能觸及的法律:
洩漏業不上知悉他人秘密罪、洩漏業務上知悉工商秘密罪、洩漏公務上知悉工商秘密罪、洩漏電腦秘密罪等等。



2. A.P2P架構筆記(3) 的式子用不等式求出B.把數字或上網收詢數據帶入 P2P架構筆記(3) 的式子 ,並畫出CS架構與P2P架構的圖

2012年10月27日 星期六

HW 1.FTP的使用流程與解釋 2.recursive call vs iterated call 之差別性(用N階來做舉例兩者之間的差異)

1.FTP的使用流程與解釋
  文件傳輸協議(File Transfer Protocol, FTP)是一個用於在兩台裝有不同作業系統的機器中傳輸電腦文件的軟體標準。它屬於網路協議組的應用層。FTP是一個8位的客戶端-伺服器協議,能操作任何類型的文件而不需要進一步處理,就像MIME或Unencode一樣。但是,FTP有著極高的延時,這意味著,從開始請求到第一次接收需求數據之間的時間會非常長,並且不時的必需執行一些冗長的登陸進程


主動模式(Active Mode)
FTP Client 隨機選擇的TCP port(通常>1024)呼叫FTP server 的port 21請求連線。進行「TCP Three-Way Handshake」當順利完成「TCPThree-Way Handshake」之後,便建立「命令連線」的通道,這個連線通道僅能進行FTP 的「指令」。
1    

被動模式(Passive Mode)
建立「命令連線」的通道的方式和主動模式一樣,但是如果需要資料傳送,就是要建立「資料連線」通道時,Client 會送出PASVPassive)指令,告訴FTP Server,要利用被動模式建立「資料連線」通道。
FTP Server 收到PASV 指令時,便會在某個>1024 port Listen,等待
2
FTP Client 來建立資料連線通道,並利用命令連線通道告知FTP
Client:「我在那個Port 上等你連線」。
然後 FTP Client 會隨機再選一個>1024 port FTP Server 所告知port進行Three-Way Handshake 並建立「資料連線」通道連線。因為這種「資料連線」通道建立方式是FTP Server 被動等FTP Client 來連線,故稱為「被動模式(Active Mode)」。

2.recursive call vs iterated call 之差別性(用N階來做舉例兩者之間的差異)
   recursive:
      所謂遞迴就是允許一個 Procedure 或 Function 呼叫自己本身。當然,他不能無限制地呼叫自己,否則將造成無窮迴圈,所以它都會伴隨一個「終止狀況」(Termination Condition),當程序執行至此終止狀況成立時,便不再呼叫自己,而獲得所求,並傳遞迴呼叫端。

iterated:
      概念上,就是有某 個變數,它的值被一次又一次地代換成新的數值, 而每次代換之後都做同樣的動作。 通常程式語言提供三種迭代的語法:for 迴圈、while 迴圈和 do-until 迴圈。 在此我們先講 for 迴圈 (for-loop)。 技術上,我們要學習各種程式語言所提供的迭代語法。

2012年10月20日 星期六

HW 1.找一個HTML語法的 (Client-Server) programming 然後對這支程式內容做解釋 2.如何提高Cache的hit ratio?

1.找一個HTML語法的 (Client-Server) programming 然後對這支程式內容做解釋
    <!-- Search Google -->
<center>
<form method=get action="http://www.google.com/search">
<table bgcolor="#FFFFFF"><tr><td>
<a href="http://www.google.com">
<img src="http://www.google.com/logos/Logo_40wht.gif" border="0" 
alt="Google" align="absmiddle"></a>
<input type=text name=q size=31 maxlength=255 value="">
<input type=hidden name=ie value=Big5>
<input type=hidden name=oe value=Big5>
<input type=hidden name=hl value=zh-TW>
<input type=submit name=btnG value="Google搜尋">
</td></tr></table>
</form>
</center>
<!-- Search Google -->
讓網頁具有 Google 搜尋功能
標準語法:<a href="想連結網址">連結地的名稱</a>===可與其它網站連結

2.如何提高Cache的hit ratio?
     絕大部分CPU都有一個cache,許多CPU還有二級cache(相對於一級cache,二級cache容量大一些,但是速度慢一些)。如果在訪問數據時,數據沒有在cache中,則成為cache沒有命中(cache miss),這是需要將數據從內存加載到cache中,這個過程非常慢,因此要盡量保證cache的命中。
如果提高cache的命中率呢?要將頻繁訪問的數據集中存放:將頻繁訪問的數據按照順序保存,而不要使用指針。這樣,最常用的數據會盡可能的保存在一級cache中。順序訪問數據:在cache miss後,包含需要訪問數據在內的一段數據會被加載到cache中,如果順序訪問,就可以提高cache的命中。避免同時遍歷多個比較大的數據buffer:多個緩衝區在cache上互相衝突對導致cache miss的概率提高。