网络编程-java基础

两台电脑之间的通信形成了网络

最小的网络:局域网  校园网(局域网)  城域网(一个市) 广域网(全球)

为什么我发QQ你能收到,这是因为我发的消息实际上是发给了QQ服务器,并不是直接发给你的,

我是与QQ服务器进行通信的,QQ服务器做的事就是把我发的消息再分发给大家,那么网络编程而言需要通过硬件和软件两部分组成,比如说5G需要建立基站,5G基站分发信号,一定需要硬件设施的支持的 ,怎么发信号,比如说我的电脑,其中的网卡就是用来发送信号,这些而言我们作为程序员而言可能不太懂,原因是因为网络进行了分层操作,把每一层都进行了屏蔽,OSI参考模型模型分成了7层,TCP/IP参考模型分成了4层

OSI参考模型
7应用层
6表示层
5会话层
4运输层
3网络层
2数据链络层
1物理层

程序员打交道:567层

TCP/IP参考模型

应用层

〔各种应用层协议如∶TEL.NET,FTP,SMTF等)
运输层〔TCP或DP )
网络层IP
网络接口层

记录一个现象:ip冲突 :两台机子的ip是一样的:就会导致无法判断传输对象

域名解析器:

域名解析器:(还有域名备案等等问题)

网络编程-java基础_第1张图片

网络编程-java基础_第2张图片

网卡

我们的电脑都有网卡,有无线网卡和有线网卡

当然还有以太网

网络编程-java基础_第3张图片

网络编程-java基础_第4张图片

面试题:我在浏览输入一个网址,底层做了什么事情

1.应用层先回发一个get请求(基于http协议或者https协议)

2.在经过传输层,基于TCP通信,增加TCP头,

3.再到网络层

最后到网卡那边:也就是网络访问层,添加以太网构造IP地址,通过物理链路层把信号发给对方,对方那边通过网卡接收信号,

客户端  服务器(important)

客户端和服务器之间的通信

TCP/IP协议

在Internet中TCP/IP协议是使用最为广泛的通讯协议。TCP/IP是英文Transmission ControlProtocol/Internet Protocol的缩写,意思是“传输控制协议/网际协议”
TCP/IP协议(定义了电子设备(比如计算机)如何连入因特网,以及数据如何在它们之间传输的标准):

Internet上不同系统之间互联的一组协议

为分散和不同类型的硬件提供通用的编程接口。
TCP/IP协议使Internet尽可能成为一个分散、无序的网络。
TCP是基于(面向)连接的协议(UTP是不可靠的),也就是说,在正式收发数据前,必须和对方建立可靠的连接。TCP协议建立连接需要三次会话(握手)

 

私网ip(局域网)与公网ip查询

下面这个是局域网的ip地址(ipv4地址)

ipv4地址:IP地址使用32位长度二进制数据表示,4个字节,每个字节用.来分开

网络编程-java基础_第5张图片

网络编程-java基础_第6张图片

ipV4: A.B.C.D 32位4部分,每一部分:1字节: 8位:0~255

ipv4:最多有256^4个这样的地址,所以会不够,所以ipv6就产生了

本机地址(电脑自动帮你配置了映射文件)

网络编程-java基础_第7张图片

端口

是一个软件结构,被客户程序或服务程序用来发送和接收数据,一台服务器有256*256个端口
0-1023是公认端口号,即已经公认定义或为将要公认定义的软件保留的
1024-65535是并没有公共定义的端口号,用户可以自己定义这些端口的作用。
端口与协议有关:TCP和UDP的端口互不相干

http:80端口

https:默认端口:443
Mysql:默认端口3306
Tomcat:默认端口8080

 

你可能感兴趣的:(java,服务器,运维)