栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

网络协议学习笔记 · 02

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

集线器 · 网桥 · 交换机 · 路由器
  • 使用Idea搭建环境
      • 一、新建项目
      • 二、添加web模块
      • 三、Tomcat部署
      • 四、Servlet
      • 五、测试
  • 计算机之间的的通信基础
      • 计算机之间的连接方式 - 网线直连
      • 计算机之间的连接方式 - 同轴电缆(Coaxial)
      • 计算机之间的连接方式 - 集线器(Hub)
      • 计算机之间的连接方式 - 网桥(Bridge)
      • 计算机之间的连接方式 - 交换机(Switch)
      • 计算机之间的连接方式 - 路由器(Router)

学习笔记系列文章


关于这篇笔记:
首先需要搭建Java服务器开发环境,为之后学习作基础。

使用Idea搭建环境

这里使用的Idea版本为2020版。

一、新建项目

一、选择 New Project,选择空项目,点击下一步。

二、给项目起个名,以及设置保存的位置。然后Finish。

三、在弹出的界面中,选择Module(模块),点击“+”,选择 New Module。

四、选择Java模块,点击 next。

五、给模块取个名称,然后 Finish。

六、直接OK。

七、先暂且添加一个java类以便测试(暂定为Main;一般情况下类不直接添加在src目录下,要分包管理,不过这里先不管)。

二、添加web模块

八、右键点击项目,点击添加框架(Add Framework Support),勾选Web…(自己看图吧) 最后OK。

九、在web目录里添加了https://blog.csdn.net/KeepPromise/article/details/test.html和一张jpg图片以备测试。

三、Tomcat部署

十、如下图操作,可以将显示的Main变为Add Configuration(这一步不知道有什么作用,貌似只是为了好看 )。

十一、点击Add Configuration,点击“+”,选择Local。

十二、点击选择Tomcat根目录。

十三、点击Deployment,点击“+”,点击Artifact。

十四、取一个简单的名字后,OK。

十五、点击run或者debug,出现如下界面则成功。也可以通过网址来访问测试的网页。

四、Servlet

十六、添加依赖,以使用servlet。

IDE的环境搭建完成

五、测试

十七、写一个简单的登录页面和一个servlet测试一下。(登录用户名固定为123,密码456)

登录页面:




    
    登录test



用户名
密码
这是一个测试页面
网络协议学习笔记 · 02

servlet:

package com.g.servlet;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;


@WebServlet("/login")
public class LoginServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        System.out.println("Do Get------");
        doPost(request, response);
    }

    @Override
    
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        System.out.println("Do Post------");

        // 1.获取客户端发送的数据(请求参数)
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        // 2.判断
        response.setHeader("Content-Type", "text/html; charset=UTF-8");
        if ("123".equals(username) && "456".equals(password)) {
            // 登录成功
             response.getWriter().write("

登录成功!!!"); } else { // 登录失败 response.getWriter().write("

登录失败!!!"); } } }

测试结果:

java环境的搭建今天就到这里。同学们散了吧

计算机之间的的通信基础

先不考虑无线连接的问题

  • 需要得知对方的IP地址。
  • 最终是根据MAC地址(网卡地址),输送数据到网卡,被网卡接收。
  1. 如果网卡发现数据的目标MAC地址是自己,就会将数据传递给上一层进行处理。
  2. 如果网卡发现数据的目标MAC地址不是自己,就会将数据丢弃,不会传递给上一层进行处理

计算机之间的连接方式 - 网线直连
  • 需要用交叉线(不是直通线)
  • 同一网段

  • ping走的是ICMP协议
  • ARP协议:已知 IP地址,不知道MAC地址时,通过广播获取 MAC地址。

右边出现的3个ARP包,实际上是一次完整的发送请求、接收响应的过程。ICMP包同理。

计算机之间的连接方式 - 同轴电缆(Coaxial)


连接同一网段。

计算机之间的连接方式 - 集线器(Hub)


连接同一网段。
集线器相比同轴电缆唯一的优点:连着集线器的某一个设备中间线路出问题,不会影响到连着集线器的其他设备的通信。

计算机之间的连接方式 - 网桥(Bridge)

还是,连接同一网段。

计算机之间的连接方式 - 交换机(Switch)

依旧是连接同一网段。

若全球所有设备都用交换机连接:
1、他们必然处于同一网段,因此 IP地址可能会不够用。
2、第一次发送数据包仍然需要ARP广播,耗费大量时间。
3、形成广播风暴,只要有一个设备发送ARP广播,全球设备都能收到。

计算机之间的连接方式 - 路由器(Router)

路由器含有网关(Gateway),网关也有IP和MAC地址。

主机在发数据之前,首先会判断目标主机的IP地址跟它是否在同一个网段:

  1. 在同一个网段:ARP广播、通过交换机/集线器传递数据
  2. 不在同一个网段:通过路由器转发数据
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1027510.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号