是指地理位置不同的具有独立功能的多台计算机及其外部设备,通过通信线路连接起来,在网络操作系统、网络管理软件及网络通信协议的管理和协调下,实现资源共享和信息传递的计算机系统
无线电台…传播交流信息,数据交换,通信
网络模型:
网络编程中有两个主要的问题:
网络编程中的要素:
ip地址:InteAddress
public class IPTest { public static void main(String[] args) { try{ //查询本机地址 InetAddress inetAddress1 = InetAddress.getByName("127.0.0.1"); System.out.println(inetAddress1); InetAddress inetAddress2 = InetAddress.getByName("localhost"); System.out.println(inetAddress2); InetAddress localHost = InetAddress.getLocalHost(); System.out.println(localHost); //查询网站ip地址 InetAddress baidu = InetAddress.getByName("www.baidu.com"); System.out.println(baidu); //常用方法 System.out.println(baidu.getAddress()); System.out.println(baidu.getCanonicalHostName()); //规范的名字 System.out.println(baidu.getHostAddress()); //ip System.out.println(baidu.getHostName()); //域名 }catch (Exception e){ e.printStackTrace(); } } }
测试结果:
/127.0.0.1 localhost/127.0.0.1 DESKTOP-IHB2C5F/192.168.136.1 www.baidu.com/110.242.68.3 [B@1b6d3586 110.242.68.3 110.242.68.3 www.baidu.com
端口表示计算机上的一个程序的进程:
public class PortTest { public static void main(String[] args) { InetSocketAddress inetSocketAddress1 = new InetSocketAddress("127.0.0.1",8080); InetSocketAddress inetSocketAddress2 = new InetSocketAddress("localhost",8080); System.out.println(inetSocketAddress1); System.out.println(inetSocketAddress2); System.out.println(inetSocketAddress1.getAddress()); System.out.println(inetSocketAddress1.getHostName()); //地址 System.out.println(inetSocketAddress1.getPort()); //端口 } }
测试结果:
/127.0.0.1:8080 localhost/127.0.0.1:8080 /127.0.0.1 activate.navicat.com 8080
协议:约定
网络通信协议: 速率、传输码率、传输控制
TCP/IP协议簇:实际上是一组协议
TCP:打电话
UDP:发短信
三次握手:
最少需要三次才能保证稳定连接
四次挥手: