一、osi參考模型
分層:應用層
表示層會話層
傳輸層網路層
資料鏈路層
物理層二、ip位址
ip位址唯一標識一台計算機。ip位址包含網路位址和主機位址兩部分。
三、埠
埠是計算機與外界通訊的入口和出口,範圍是0~65535(2的16次冥-1)。
在同一臺計算機上,任何兩個程序不能同時使用乙個同乙個埠。
但是,乙個埠可以被多個執行緒訪問。
四、tcp/ip協議
1、tcp/ip協議簇,簡稱為tcp/ip協議。
2、tcp是面向連線的,可靠的,全雙工的,基於位元組流的傳輸層通訊協議。
3、udp是無連線的,不可靠的,資料報協議。udp主要的作用是:壓縮。它將網路資料壓縮成資料報的形式。
五、socket類
1、構造方法
1.1 socekt s= new socket(hostname,port);
1.2 socket s= new socket(address,port);
2、主要方法:
1)int getport:返回遠端埠
2) int getlocalport :返回本地埠
3)getinputstream
4)getoutputstream
六、socketserver類
1、構造方法
1.1 socketserver ss= new socketserver(port);
1.2 socketserver ss= new socketserver(port,maxqu); //maxqu:最大連線數
2、主要方法:
1)accept 等待客戶端發起通訊,監聽狀態
七、inetaddress類
1、主要方法
1.1 inetaddress getlocalhost() :返回本地主機的inetaddress物件
1.2 inetaddress getbyname(string hostname) :返回指定主機名hostname對應的inetaddress物件
1.3 inetaddress getallbyname(string hostname):返回指定主機名hostname對應的所有可能的inetaddress物件
八、基於udp協議的socket程式設計
datagrampacket:資料容器
datagramsocket:傳送或接收。它不會產生輸入、輸出流。
注意:基於udp通訊的兩個程式之間的關係,是對等的,無主次之分。
8.1、datagrampacket 類
8.1.1 datagrampacket 類的構造方法
datagrampacket dp= new datagrampacket(sendstr.getbytes(), 0, sendstr.getbytes().length, ia,9070);
byte getdata():返回位元組陣列,也就是包中的資料。
8.2.datagramsocket常用方法
8.2.1 send方法
8.2.2 receive方法
socket程式設計
一直以為serversocket accept之後客戶端才能發資訊,實驗後得出如下結論 1 serversocket沒有accept時,client是可以傳送資訊到server端的。2 serversocket accept之後,正在處理訊息時,client也是可以傳送資訊到server端。如果se...
Socket程式設計
對tcp ip udp socket程式設計這些詞你不會很陌生吧?隨著網路技術的發展,這些詞充斥著我們的耳朵。那麼我想問 1.什麼是tcp ip udp?2.socket在 呢?3.socket是什麼呢?4.你會使用它們嗎?什麼是tcp ip udp?tcp ip transmission cont...
socket程式設計
建立socket 建立乙個 socket,它可用於在基於 tcp ip 的網路 如 internet 上通訊。socket s new socket addressfamily.internetwork,sockettype.stream,protocoltype.tcp 若要使用 udp 而不是 ...