计算机网络:
计算机网络是指将地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操
作系统,网络管理软任及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统。
网络编程的目的:
传播交流信息,数据交换。
想要达到这个效果需要什么:
1.如何准确的定位网络上的一台主机 192.168.16.124:端口,定位到这个计算机上的某个资源
2.找到了这个主机,如何传输数据呢?
网络通信的要素:
1.网络编程中有两个主要的问题
。如何准确的定位到网络上的一台或者多台主机
。找到主机之后如何进行通信
2.网络编程中的要素
。P和端口号
。网络通信写协议
3.万物皆对象
ip地址: InetAddress
•唯一定位一台网络上计算机
• 127.0.0.1:本机localhost
•ip地址的分类
o ipv4 / ipv6
•IPV4 127.0.0.1 ,4个字节组成。, 0255,42亿;30亿都在北美,亚洲4亿。
通信协议
协议 :约定,就好比我们现在说的是普通话。
网络通信协议:速率,传输码率,代码结构,传输控制.
问题:非常的复杂?
大事化小:分层!
TCP/IP协议重要:
•TCP:用户传输协议
• UDP :用户数据报协议
TCP和 udp
TCP:打电话
。连接,稳定
三次握手 四你拆手
•客户端、服务端
•传输完成,释放连接,效率低
UDP:发短信
•不连接,不稳定
。客户端、服务端:没有明确的界限
•不管有没有准备好,都可以发给你.
端口
端口表示计算机上的一个程序的进程;
•不同的进程有不同的端口用来区分软件
•被规定 0~65535
• TCPUDP : 65535 * 2 tcp: 80, udp:80吗,单个协议下,端口号不能冲突
端口分类
公有端口 0-1023
= HTTP : 80
HTTPS: 443
FTP: 21
Telent : 23
程序注册端口:1024~49151,分配用户或者程序
Tomcat: 8080T
MySQL: 3306
Oracle: 1521
动态、私有:49152~65535
Tomcat
服务端
•自定义S
•Tomcat服务器
客户端
•自定义C
•浏览器
TCP
客户端
11.连接服务器 Socket
2.发送消息
服务器
1.建立服务的端口 Serversocket
2. 等待用户的链接 accept
OutputStream os = socket. getOutputStream();
port: 9000);
113. itWXP
FileInputStream fis = new FileInputStream (new File((pathname: "qinjiang. jpg") );
114.
THeM
byte[1 buffer = new byte[10241;
int len;
while ((len=fis.read (buffer))I=-1) {
os.write (buffer, off: 0, len);
1/5. 关闭资源
fis. close () ;
os. close();
socket. close ()
tcp
tomac
public class TcpServerDemo02 {
public static void main(String[] args) throws Exception {
// 创建服务
ServerSocket serverSocket = new ServerSocket ( port: 9000) ;
//监听客户端的连接
Socket socket = serversocket.accept();1/肌来式发听,会一直等竹客广端迮按
//获取输入流
Inputstream is = socket. getInputstream();
//文件输出
new FileOutputstream (new File( pathname: "receive"));