网络编程概述

网络的相关概念

网络通信

在这里插入图片描述

网络

在这里插入图片描述

1. 要想实现网络通信,需要解决的三个问题:

问题1:如何准确地定位网络上一台或多台主机

问题2:如何定位主机上的特定的应用

问题3:找到主机后,如何可靠、高效地进行数据传输

2. 实现网络传输的三个要素:(对应解决三个问题)

  • 使用IP地址(准确地定位网络上一台或多台主机)
  • 使用端口号(定位主机上的特定的应用)
  • 规范网络通信协议(可靠、高效地进行数据传输)

3. 通信要素1:IP地址

在这里插入图片描述

3.1 作用

IP地址用来给网络中的一台计算机设备做唯一的编号

3.2 IP地址分类

  • IP地址分类方式1

    IPv4(占用4个字节)
    在这里插入图片描述
    在这里插入图片描述

    IPv6(占用16个字节)

  • IP地址分类方式2

    公网地址(万维网使用)和私有地址(局域网使用,以192.168开头)

3.3 本地回路地址:127.0.0.1

本地回路地址通常指的是IPv4地址的环回地址(Loopback Address),在大多数情况下是 127.0.0.1。IPv6的环回地址则是 ::1

3.4 域名:便捷的记录ip地址

在这里插入图片描述

4.通信要素2:端口号

  • 可以唯一标识主机中的进程(应用程序)
  • 不同的进程分配不同的端口号
  • 范围:0~65535

在这里插入图片描述

5.InetAddress的使用

5.1 作用

InetAddress类的一个实例就代表一个具体的ip地址。

5.2 实例化方式

InetAddress getByName(string host):获取指定ip对应的InetAddress的实例

InetAddress getLocalHost():获取本地ip对应的InetAddress的实例

public class InetAddressTest {
    public static void main(String[] args) {
        try {
            // 1.实例化
            // getByName(String host):获取指定ip对应的InetAddress的实例
            InetAddress inet1 = InetAddress.getByName("192.168.23.31");
            System.out.println(inet1); // /192.168.23.31

            InetAddress inet2 = InetAddress.getByName("www.bilibili.com");
            System.out.println(inet2); // www.bilibili.com/121.194.11.73

            //getLocalHost():获取本地ip对应的InetAddress的实例
            InetAddress inet3 = InetAddress.getLocalHost();
            System.out.println(inet3); // LAPTOP-04B9NQB6/192.168.1.70\

            InetAddress inet4 = InetAddress.getByName("127.0.0.1");
            System.out.println(inet4); // /127.0.0.1

            // 2.两个常用的方法
            // 获取对应的域名
            System.out.println(inet2.getHostName()); // www.bilibili.com
            // 获取对应的ip地址
            System.out.println(inet2.getHostAddress()); // 121.194.11.73
            
        } catch (UnknownHostException e) {
            e.printStackTrace();
        }
    }
}

5.3 常用方法

在这里插入图片描述

6.通信要素3:通信协议

在这里插入图片描述

6.1 网络通信协议的目的

为了实现可靠而高效的数据传输。

6.2 网络参考模型

0SI参考模型:将网络分为7层,过于理想化,没有实施起来。

TCP/IP参考模型:将网络分为4层:应用层、传输层、网络层、物理+数据链路层。事实上使用的标准

相关推荐

  1. Linux网络编程——概述、TCP/UDP的对比

    2024-07-17 20:42:02       66 阅读
  2. 白话编程-概述

    2024-07-17 20:42:02       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-17 20:42:02       66 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-17 20:42:02       70 阅读
  3. 在Django里面运行非项目文件

    2024-07-17 20:42:02       57 阅读
  4. Python语言-面向对象

    2024-07-17 20:42:02       68 阅读

热门阅读

  1. 用C语言写的一个扫雷小游戏

    2024-07-17 20:42:02       19 阅读
  2. C#中处理Socket粘包

    2024-07-17 20:42:02       24 阅读
  3. Three.js常见的贴图类型及其用途

    2024-07-17 20:42:02       20 阅读
  4. MySQL 事务

    2024-07-17 20:42:02       21 阅读