1各薇、每臺主機(jī)擁有唯一的標(biāo)識(IP地址)
2业岁、共同的通信語言(協(xié)議)
3鳞仙、區(qū)別不同應(yīng)用程序的端口
網(wǎng)線、網(wǎng)卡等屬于物理層笔时;TCP/IP協(xié)議在傳輸層棍好;應(yīng)用層也是用戶可以直接接觸得到的,如以下協(xié)議:
IP地址也有格式允耿,IPv4版本指的是第四個(gè)版本
端口:
一臺電腦可以運(yùn)行多個(gè)不同的程序借笙,用端口號區(qū)分這些應(yīng)用程序。一臺電腦上的QQ消息能不能被另一臺電腦的MSN接收呢较锡?當(dāng)然不能业稼,原因就是兩個(gè)程序的端口號不同
public static void main(String[] args) throws UnknownHostException {
//獲取本機(jī)的InetAddress實(shí)例
InetAddress address1=InetAddress.getLocalHost(); //會產(chǎn)生異常蚂蕴,try/catch解決或者拋出異常
System.out.println("本機(jī)InetAddress獲得計(jì)算機(jī)名稱:"+address1.getHostName());
System.out.println("本機(jī)InetAddress獲得計(jì)算機(jī)IP地址:"+address1.getHostAddress());
//字符數(shù)組獲得IP地址
byte[] bytes1=address1.getAddress(); //可能會溢出
System.out.println("字符數(shù)組形式獲得IP:"+Arrays.toString(bytes1));
//直接輸出InetAddress對象
System.out.println(address1);
System.out.println("===================");
//根據(jù)其他電腦的名稱獲取InetAddress對象
InetAddress address2=InetAddress.getByName("Lenovo-PC");
System.out.println("獲得名稱:"+address2.getHostName());
System.out.println("獲得IP地址:"+address2.getHostAddress());
//根據(jù)其他電腦的IP獲取InetAddress對象
InetAddress address3=InetAddress.getByName("192.168.1.108");
System.out.println("名稱:"+address3.getHostName());
System.out.println("IP地址:"+address3.getHostAddress());
}
URL
一個(gè)網(wǎng)址就是一個(gè)URL低散,如“www.baidu.com”就是一個(gè)URL