V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
yuhuan66666
V2EX  ›  问与答

求教个 Java 获取网络通畅度的问题

  •  
  •   yuhuan66666 · 2018-03-21 10:32:57 +08:00 · 1332 次点击
    这是一个创建于 2430 天前的主题,其中的信息可能已经有所发展或是发生改变。

    需要写个实时检测网络通畅度的功能,找了半天,只发现有检测网络通还是不通的包,但是需要一个能检测出通畅程度,根据通畅程度评分的办法,现在只知道对面的 ip。

    求教下老司机,应该怎么写这个功能?

    想过 java 去调平命令 ping,但是想着这么做有些弊端。

    还没找到有关这方面的包。请问一下网上类似的功能是怎么做的?

    7 条回复    2018-03-21 14:52:16 +08:00
    msg7086
        1
    msg7086  
       2018-03-21 10:45:21 +08:00
    通畅度是什么东西?是你发明出来的词汇么……
    yuhuan66666
        2
    yuhuan66666  
    OP
       2018-03-21 10:47:33 +08:00
    @msg7086 #1 需求 发明的。。。。
    丢包率啥的评个分
    ThirdFlame
        3
    ThirdFlame  
       2018-03-21 10:48:59 +08:00
    ping 可以有丢包率、延迟、抖动 等指标
    但是 ping 不能完全反应网络情况
    msg7086
        4
    msg7086  
       2018-03-21 10:55:52 +08:00
    丢包有很多原因。
    以前丢包主要是因为带宽过度使用而被桶直接扔了。
    现在还有些其他原因,比如你懂的。

    通畅度这个词本身没意义,最好像 #3 说的那样,列一个具体的指标要求。
    网络游戏需要丢包延迟抖动,下载上传需要延迟和带宽,等等。
    letitbesqzr
        5
    letitbesqzr  
       2018-03-21 10:58:37 +08:00   ❤️ 1
    java.net 包中就实现了 ICMP ping,见 Ping 类的 ping(String)函数
    yuhuan66666
        6
    yuhuan66666  
    OP
       2018-03-21 11:01:35 +08:00
    @msg7086 #4 我如果根据 带宽、延迟、抖动和丢包率 这四个值 同时 进行衡量呢? 先观测一段时间 然后取个平均值 衡量好坏?
    msg7086
        7
    msg7086  
       2018-03-21 14:52:16 +08:00
    @yuhuan66666 而且这玩意儿和量子观测一样,观测的动作本身就会影响观测对象。
    你测带宽,狠命传一些数据,结果影响了丢包率和延迟抖动……
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5970 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 02:03 · PVG 10:03 · LAX 18:03 · JFK 21:03
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.