CN109067608A - 一种测算ip包从设备到公网网关之间跳数的方法 - Google Patents

一种测算ip包从设备到公网网关之间跳数的方法 Download PDF

Info

Publication number
CN109067608A
CN109067608A CN201810737598.0A CN201810737598A CN109067608A CN 109067608 A CN109067608 A CN 109067608A CN 201810737598 A CN201810737598 A CN 201810737598A CN 109067608 A CN109067608 A CN 109067608A
Authority
CN
China
Prior art keywords
hop count
equipment
packet
public network
stun
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201810737598.0A
Other languages
English (en)
Inventor
何少琼
柯都敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Tuya Information Technology Co Ltd
Original Assignee
Hangzhou Tuya Information Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Tuya Information Technology Co Ltd filed Critical Hangzhou Tuya Information Technology Co Ltd
Priority to CN201810737598.0A priority Critical patent/CN109067608A/zh
Publication of CN109067608A publication Critical patent/CN109067608A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/20Hop count for routing purposes, e.g. TTL
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种测算IP包从设备到公网网关之间跳数的方法,包括以下步骤:1)向Stun服务发送Stun信令;2)若收到Stun返回信息,则获取NAT映射的IP地址XXX;3)若没有收到Stun返回信息,则重复未超过三次后返回第一步;4)向第二步获得的IP地址XXX发送ICMP(echo request),获得TTL值为N;5)若收到ICMP的反馈(echo response),获取其TTL值为M,则设备和网关之间的跳数为N‑M;6)若没有收到ICMP的Response,则重复超过未三次后返回第四步;7)得到跳数计算结果或重复超过三次,则退出程序。本发明所述技术方案解决了如何在单一路由的情况下可以确定设备与公网网关之间的跳数的问题。

Description

一种测算IP包从设备到公网网关之间跳数的方法
技术领域
本发明涉及互联网技术领域,尤其涉及一种测算ip包从设备到公网网关之间跳数的方法。
背景技术
网关是一种路由器,路由器连接两个或多个网络并提供路由功能。例如,一些路由器在网络接口级或物理级路由,而网关是在网络级上的路由。网关从其他网关或主机接收要发送到本地网络主机的IP数据包,并且将IP数据包从一个网络路由到另一个。例如,连接两个令牌环网络的网关有两个令牌环适配器卡,每一个都有它自己的令牌环接口。为了传递信息,网关通过一个网络接口接收数据包,并通过另外的网络接口把它们发送出去。网关通过接口状态消息定期验证它们的网络连接。
网关根据目标网络路由包,而不是根据目标主机。也就是说,网关机器不需要为包跟踪每个可能的主机目标。相反,网关根据目标主机的网络来路由包。目标网络然后负责把包发送到目标主机。这样,典型的网关机器只需要有限的磁盘存储容量(如果有的话)和有限的主存储器容量。
消息从源主机到目标主机必须经过的距离取决于它必须经过的网关跳数。一个网关到和它直接相连的网络是零跳数;一个网关经过另一个网关到达一个网络则为跳数1,以此类推。消息距离通常是用必需的网关跳数,或称跳数(也称作度量)来表达。跳数用来在寻找路由时确定最优路由,最优路由是根据实际情况不断变化的。路由器使用路由算法来找到到达目的地的最佳路由。当说“最佳路由”时,考虑的参数包括诸如跳跃数(分组数据包在网络中从一个路由器或中间节点到另外的节点的行程)、延时以及分组数据包传输通信耗时。
发明内容
本发明是为了解决如何在单一路由的情况下可以确定设备与公网网关之间的跳数。
本发明所述的一种测算IP包从设备到公网网关之间跳数的方法,包括:
1)向Stun服务发送Stun信令;
2)若收到Stun返回信息,则获取NAT映射的IP地址;
3)若没有收到Stun返回信息,则重复未超过三次后返回第一步;
4)向第二步获得的所述IP地址发送ICMP,获得TTL值为N
5)若收到ICMP的反馈,设置其TTL值为M,则设备和网关之间的跳数为N-M;
6)若没有收到ICMP的反馈,则重复超过未三次后返回第四步;
7)得到跳数计算结果或重复超过三次,则退出。
优选地,所述Stun服务被用来在两个同时处于NAT路由器之后的主机之间建立UDP通信。
优选地,所述Stun被配置为允许位于NAT或多重NAT后的客户端找出自己的公网地址。
优选地,所述Stun返回信息包括查出自己位于哪种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。
优选地,所述ICMP被配置为在IP主机、路由器之间传递控制消息。
优选地,所述控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
优选地,所述TTL值被配置为发送者设置。
优选地,所述TTL值是数据包在internet系统中可以跳跃的次数上限,限制数据包在网络中存在的时间,防止数据包不断的在IP互联网络上循环。
本发明所述的测算IP包从设备到公网网关之间跳数的方法,包括以下步骤:
1.获取公网ip地址为X
2.向ip X发送类型为8icmp报文要求X地址回显,设置icmp的报文中的ttl值为N
3.如果成功收到echo的icmp报文获取报文中的ttl值为M,N-M的差值就是设备与公网网关之间的跳数
如果在100ms没有收到echo的icmp报文,则重复3的步骤,如果3次均失败,则获取失败
附图说明
图1为本发明实施提供的一种较佳实施方式的流程图。
具体实施方式
下面结合附图和具体实施方式对本发明做进一步描述。
如图1所示,本发明所述的测算IP包从设备到公网网关之间跳数的方法,包括以下步骤:
1)向Stun服务发送Stun信令
2)若收到Stun返回信息,则获取NAT映射的IP地址XXX
3)若没有收到Stun返回信息,则重复未超过三次后返回第一步
4)向第二步获得的IP地址XXX发送ICMP(echo request),设置TTL值为N
5)若收到ICMP的反馈(echo response),获取其TTL值为M,则设备和网关之间的跳数为N-M
6)若没有收到ICMP的Response,则重复超过未三次后返回第四步
7)得到跳数计算结果或重复超过三次,则退出程序。
在本发明的另一个较佳实施例中,通过stun协议获取Nat映射的IP地址为112.17.78.106.以mac os操作系统举例ping 112.17.78.106,显示“64bytesfrom112.17.78.106:icmp_seq=0ttl=254time=18.491ms”mac操作系统ttl默认值为255,echo response的ttl值为254,可以计算出网关和设备之间的跳数为
255-254=1。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术无需创造性劳动就可以根据本发明的构思作出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。

Claims (8)

1.一种测算IP包从设备到公网网关之间跳数的方法,其特征在于,包括:
1)向Stun服务发送Stun信令;
2)若收到Stun返回信息,则获取NAT映射的IP地址;
3)若没有收到Stun返回信息,则重复未超过三次后返回第一步;
4)向第二步获得的所述IP地址发送ICMP,获得TTL值为N
5)若收到ICMP的反馈,设置其TTL值为M,则设备和网关之间的跳数为N‐M;
6)若没有收到ICMP的反馈,则重复超过未三次后返回第四步;
7)得到跳数计算结果或重复超过三次,则退出。
2.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述Stun服务被用来在两个同时处于NAT路由器之后的主机之间建立UDP通信。
3.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述Stun被配置为允许位于NAT或多重NAT后的客户端找出自己的公网地址。
4.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述Stun返回信息包括查出自己位于哪种类型的NAT之后以及NAT为某一个本地端口所绑定的Internet端端口。
5.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述ICMP被配置为在IP主机、路由器之间传递控制消息。
6.如权利要求6所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。
7.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述TTL值被配置为发送者设置。
8.如权利要求1所述的测算IP包从设备到公网网关之间跳数的方法,其特征在于,所述TTL值是数据包在internet系统中可以跳跃的次数上限,限制数据包在网络中存在的时间,防止数据包不断的在IP互联网络上循环。
CN201810737598.0A 2018-07-06 2018-07-06 一种测算ip包从设备到公网网关之间跳数的方法 Pending CN109067608A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810737598.0A CN109067608A (zh) 2018-07-06 2018-07-06 一种测算ip包从设备到公网网关之间跳数的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810737598.0A CN109067608A (zh) 2018-07-06 2018-07-06 一种测算ip包从设备到公网网关之间跳数的方法

Publications (1)

Publication Number Publication Date
CN109067608A true CN109067608A (zh) 2018-12-21

Family

ID=64818964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810737598.0A Pending CN109067608A (zh) 2018-07-06 2018-07-06 一种测算ip包从设备到公网网关之间跳数的方法

Country Status (1)

Country Link
CN (1) CN109067608A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111478821A (zh) * 2019-01-24 2020-07-31 中国信息通信研究院 一种网络性能测试方法和系统
CN113381968A (zh) * 2020-03-09 2021-09-10 中国移动通信集团设计院有限公司 宽带防私接判断方法、装置、电子设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409656A (zh) * 2008-10-15 2009-04-15 华为技术有限公司 一种虚电路连通性检查的方法、网络节点和通信系统
CN101505250A (zh) * 2009-04-10 2009-08-12 杭州华三通信技术有限公司 公网lsp的探测方法和探测系统及vpn
CN102055619A (zh) * 2009-11-02 2011-05-11 中兴通讯股份有限公司 一种实现双向路径段故障检测的方法及系统
WO2012110103A1 (en) * 2011-02-18 2012-08-23 Birdstep Technology Method, gateway, and client for optimizing keep-alive message handling
CN106550058A (zh) * 2015-09-17 2017-03-29 群晖科技股份有限公司 网络地址转换穿透方法以及使用该方法的系统
CN106982153A (zh) * 2017-05-18 2017-07-25 烽火通信科技股份有限公司 一种多段伪线网络连通性检测方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101409656A (zh) * 2008-10-15 2009-04-15 华为技术有限公司 一种虚电路连通性检查的方法、网络节点和通信系统
CN101505250A (zh) * 2009-04-10 2009-08-12 杭州华三通信技术有限公司 公网lsp的探测方法和探测系统及vpn
CN102055619A (zh) * 2009-11-02 2011-05-11 中兴通讯股份有限公司 一种实现双向路径段故障检测的方法及系统
WO2012110103A1 (en) * 2011-02-18 2012-08-23 Birdstep Technology Method, gateway, and client for optimizing keep-alive message handling
CN106550058A (zh) * 2015-09-17 2017-03-29 群晖科技股份有限公司 网络地址转换穿透方法以及使用该方法的系统
CN106982153A (zh) * 2017-05-18 2017-07-25 烽火通信科技股份有限公司 一种多段伪线网络连通性检测方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
W_OU: "《ICMP百度百科历史版本》", 《HTTPS://BAIKE.BAIDU.COM/HISTORY/ICMP/572452/128890773》 *
W_OU: "《stun百度百科历史版本》", 《HTTPS://BAIKE.BAIDU.COM/HISTORY/STUN/3131387/129875527》 *
赏叶M70: "《TTL百度百科历史版本》", 《HTTPS://BAIKE.BAIDU.COM/HISTORY/TTL/130248/111411593》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111478821A (zh) * 2019-01-24 2020-07-31 中国信息通信研究院 一种网络性能测试方法和系统
CN111478821B (zh) * 2019-01-24 2022-02-22 中国信息通信研究院 一种网络性能测试方法和系统
CN113381968A (zh) * 2020-03-09 2021-09-10 中国移动通信集团设计院有限公司 宽带防私接判断方法、装置、电子设备及存储介质
CN113381968B (zh) * 2020-03-09 2022-10-18 中国移动通信集团设计院有限公司 宽带防私接判断方法、装置、电子设备及存储介质

Similar Documents

Publication Publication Date Title
EP3342127B1 (en) Network packet flow controller with extended session management
EP3198822B1 (en) Computer network packet flow controller
US20190215270A1 (en) Stateful load balancing in a stateless network
US11165863B1 (en) Network neighborhoods for establishing communication relationships between communication interfaces in an administrative domain
EP2544417B1 (en) Communication system, path control apparatus, packet forwarding apparatus and path control method
US6628623B1 (en) Methods and systems for determining switch connection topology on ethernet LANs
CN111771359B (zh) 用于连接通信网络的方法和系统
EP3025453B1 (en) Probe routing in a network
KR20130009864A (ko) L2 이더넷 노드로의 통신 가용 전송 네트워크 대역폭
US20080192650A1 (en) Method and Node for Locating a Network User
US10009282B2 (en) Self-protecting computer network router with queue resource manager
US11652739B2 (en) Service related routing method and apparatus
CN108881018B (zh) 用于在diameter信令路由器处路由diameter消息的方法、系统及装置
US10205651B2 (en) Apparatus and method of selecting next hops for a session
EP3025459B1 (en) Probe routing in a network
CN109067608A (zh) 一种测算ip包从设备到公网网关之间跳数的方法
CN104115473A (zh) 虚拟接口应用
WO2017157457A1 (en) Sdn support for disjoint multipath configuration
KR101064473B1 (ko) 망관리시스템에서의 스위치장비간 링크 연결정보 구축방법
Martin et al. Radar: Ring-based adaptive discovery of active neighbour routers
CN108183859B (zh) 一种互联网流量调度方法和系统
CN115941576A (zh) SRv6报文的构建方法、装置及终端设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20181221

RJ01 Rejection of invention patent application after publication