Java-网络基础
IP (网络之间互连的协议)
网络之间互连的协议(IP)是Internet Protocol的外语缩写, 中文缩写为“网协”.
网络之间互连的协议也就是为计算机网络相互连接进行通信而设计的协议。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计
算机在因特网上进行通信时应当遵守的规则。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。IP地址具有唯一性,根据用户性质的不同,可
以分为5类。另外,IP还有进入防护,知识产权,指针寄存器等含义。
网络之间互连的协议(IP)是Internet Protocol的外语缩写,中文缩写为“网协”.在Java中使用InetAddress类表示.
IP的版本:
IPv4:192.168.10.30
IPv6:1080:0:0:0:8:800:200C:417A
IP地址编址方案:IP地址编址方案将IP地址空间划分为A、B、C、D、E五类,其中A、B、C是基本类,D、E类作为多播和保留使用。
A类 10.0.0.0--10.255.255.255
B类 172.16.0.0--172.31.255.255
C类 192.168.0.0--192.168.255.255
----------------------------------------------
在Java中,使用InetAddress类来表示IP地址.
表示本机:
方式1:本机IP
方式2:127.0.0.1
方式3:localhost
//演示IP操作 public class InetAddressDemo { public static void main(String[] args) throws Exception { InetAddress ip = InetAddress.getByName("DESKTOP-2IKQB35");//给定的计算机名字 System.out.println(ip.toString()); //获取主机名称 System.out.println(ip.getHostName()); //获取IP地址 System.out.println(ip.getHostAddress()); //static InetAddress getLocalHost() ;返回本机IP System.out.println(InetAddress.getLocalHost()); //boolean isReachable(int timeout); 是否可达的.是否可以连接访问 System.out.println(InetAddress.getLocalHost().isReachable(10000)); } }
端口(port):
"端口"是英文port的意译,可以认为是设备与外界通讯交流的出口。端口可分为虚拟端口和物理端口,其中虚拟端口指计算机内部或交换机路由器内的端口,不可见。例如计算机中的80端口、21端口、23端口等。物理端口又称为接口,是可见端口,计算机背板的RJ45网口,交换机路由器集线器等RJ45端口。电话使用RJ11插口也属于物理端口的范畴。
协议端口:
如果把IP地址比作一间房子 ,端口就是出入这间房子的门。真正的房子只有几个门,但是一个IP地址的端口可以有65536(即:2^16)个之多!端口是通过端口号来标记的,端口号只有整数,范围是从0 到65535(2^16-1)。
按端口号分为三大类:
1.周知端口(Well Known Ports)
周知端口是众所周知的端口号,范围从0到1023,其中80端口分配给WWW服务,21端口分配给FTP服务等。我们在IE的地址栏里输入一个网址的时候是不必指定端
口号的,因为在默认情况下WWW服务的端口是“80”。
网络服务是可以使用其他端口号的,如果不是默认的端口号则应该在 地址栏上指定端口号,方法是在地址后面加上冒号“:”(半角),再加上端口号。比如使
用“8080”作为WWW服务的端口,则需要在地址栏里输入“网址:8080”。
但是有些系统协议使用固定的端口号,它是不能被改变的,比如139 端口专门用于NetBIOS与TCP/IP之间的通信,不能手动改变。
2.动态端口(Dynamic Ports)
动态端口的范围是从49152到65535。之所以称为动态端口,是因为它 一般不固定分配某种服务,而是动态分配。
3.注册端口
端口1024到49151,分配给用户进程或应用程序。这些进程主要是用户选择安装的一些应用程序,而不是已经分配好了公认端口的常用程序。这些端口在没有被服
务器资源占用的时候,可以用用户端动态选用为源端口。
结论:
1):在同一台电脑中端口不能重复,若重复,则报错端口冲突
2):如果我们需要自定义端口号,建议使用10000以上的.
协议:
协议(protocol),网络协议的简称,网络协议是通信计算机双方必须共同遵从的一组约定。如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。它的三要素是:语法、语义、时序。
网络协议,也可简称协议,通常由三要素组成:
(1)语法:即数据与控制信息的结构或格式;
(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;
(3)时序(同步),即事件实现顺序的详细说明。
-------------------------------------------------------------
http——超文本传输协议资源
https——用安全套接字层传送的超文本传输协议
ftp——文件传输协议
mailto——电子邮件地址
file——当地电脑或网上分享的文件
分类:
物理层:以太网 · 调制解调器 · 电力线通信(PLC) · SONET/SDH · G.709 · 光导纤维 · 同轴电缆 · 双绞线等
数据链路层:Wi-Fi(IEEE 802.11) · WiMAX(IEEE 802.16) ·ATM · DTM · 令牌环 · 以太网 ·FDDI · 帧中继 · GPRS · EVDO ·HSPA · HDLC · PPP · L2TP ·PPTP ·
ISDN·STP 等
网络层协议:IP (IPv4 · IPv6) · ICMP· ICMPv6·IGMP ·IS-IS · IPsec · ARP · RARP等
传输层协议:TCP · UDP · TLS · DCCP · SCTP · RSVP · OSPF 等
应用层协议:DHCP ·DNS · FTP · Gopher · HTTP· IMAP4 · IRC · NNTP · XMPP ·POP3 · SIP · SMTP ·SNMP · SSH ·TELNET · RPC · RTCP · RTP ·RTSP· SDP ·
SOAP · GTP · STUN · NTP· SSDP · BGP · RIP 等
URI:
统一资源标识符(Uniform Resource Identifier,或URI)是一个用于标识某一互联网资源名称的字符串。
包含:主机名,标识符,相对URI.
如:http://java.sun.com:80/j2se/1.3/hello.html
URL:
统一资源定位符是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。
互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该怎么处理它。
-----------------------------
在Java中,URI表示一个统一资源的标识符,不能用于定位任何资源,唯一的作用就是解析.
而URL则包含一个可以打开到达该资源的输入流,可以简单理解URL是URI的特例.
-------------------------------------------------------------------------------
简单理解: URI和URL都表示一个资源路径.
创建URL对象:
URL(String protocol, String host, int port, String file)
使用Tomcat作为服务器.
------------------------------
使用Tomcat必须先配置环境变量:
JAVA_HOME=JDK的根路径
共有 0 条评论