1
OSI七层协议
应用层
直接为用户的应用进程提供服务
表示层
提供网络传输的标准格式
会话层
提供网络中两主机之间会话的建立、维持和终止等
传输层
为两主机间的进程通信提供可靠服务
网络层
为分组交换网上的不同主机提供通信服务,包括路由、地址解析等
数据链路层
两个相邻结点间的点到点的帧传输
物理层
比特流传输
TCP/IP四层协议
应用层;运输层;网际层;网络接口
2
TCP是一种面向连接的保证可靠传输的协议。三次握手确立连接。传输数据前先要建立连接!
UPD只管利用地址发送不管对面是否接收得到,所以TCP是面向链接的可靠协议
3
Java网络编程时从传输层开始,并根据编程使用的协议的层次分为高层次(基于应用层)与低层次网络编程(基于传输层)
4
Socket编程时目的地址和端口在创建Socket对象时指出,例如:
Socket a=new Socket("127.0.0.1",4700);
数据报编程时目的地址和端口在新建DatagramPacket对象时指出,DatagramSocket的构造方法之一:
DatagramSocket(int port, InetAddress laddr)
5
package test;
import java.io.*;
import java.net.*;
public class book15_5 {
public static void main(String args[]) throws Exception{
URL url = new URL("http://www.chd.edu.cn/");//构建一URL对象
URLConnection con=url.openConnection();//获取URLConnection对象
InputStream is = con.getInputStream();
OutputStream os =new FileOutputStream(new File("baidu.txt"));
int count,n=512;
byte[] buffer = new byte[n];
count = is.read(buffer,0,n);
while(count!= -1)
{
os.write(buffer, 0, count);
count = is.read(buffer,0,n);
}
os.close();
is.close();
System.out.println("Save to baidu.txt!");
}
}