网络编程
一、网络的七层模型 ? ? ? ?从下往上依次是物理层(电路,布线)-数据链路层(交换机)-网络层(tcp/ip,路由器)-传输层-会话层-表示层(编码,解码,加密,解密,压缩,解压缩)-应用层(http),但是tcp/ip模型是网络接口层-网络层-传输层-应用层 二、三次握手和四次挥手 ? ? ? 1. ?三次握手: ? ? ? ? ?(1) 客户端向网络服务器端发送请求 (你在吗?) ? ? ? ? ?(2) 服务器端回应客户端的请求 (我在) ? ? ? ? ?(3) 服务器端向客户端发送请求 (我在,你在吗?) ? ? ? 2.?四次挥手 ? ? ? ? ? (1) 客户端向服务器端发送请求 (我要离开了) ? ? ? ? ? (2) 服务器端回应客户端 (嗯) ? ? ? ? ? (3) 客户端再次向服务器端发出请求 (我真的要离开了) ? ? ? ? ? (4) 服务器端回应客户端 (嗯,走好) 三、常用的InetAddress的主要函数
main(String[] args) InetAddress ia = System.out.println(ia.getHostName());
System.out.println(InetAddress.getByName(ia.getHostName()));
[] b = [4 b = ia.getAddress();
System.out.println(ia.getHostAddress());
}
输出结果: xxxx/192.168.152.1192.168.152.1 四、tcp编程服务端与客户端通讯 ? ? ? 1.?服务端代码
main(String[] args)
ServerSocket ss = ServerSocket(60000);
Socket s = ss.accept();
System.out.println(s.getPort() + "连接进来了");
(
InputStream is = InputStreamReader isr = [] cArray = [20 iRead = isr.read(cArray);
(iRead == -1 System.out.println("得到的字节数:" + iRead);
System.out.println("收到的信息是" + String(cArray,0
OutputStream os = Scanner sc = String sSend =
}
? ? ? 2. 客户端代码
main(String[] args)
Socket s = Socket("192.168.152.1",60000 (
OutputStream os = Scanner sc = String sSend =
InputStream is = InputStreamReader isr = [] cArray = [20 iRead = isr.read(cArray);
(iRead == -1 System.out.println("得到的字节数:" + iRead);
System.out.println("收到的信息是" + String(cArray,iRead));
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |