English Sentence Loading...
英语句子加载中...

Ping用VB实现的主要算法

Ping 命令通过向计算机发送 ICMP 回应报文并且监听回应报文的返回,以校验与远程计算机或本地计算机的连接。对于每个发送报文, Ping 最多等待 1 秒,并打印发送和接收把报文的数量。比较每个接收报文和发送报文,以校验其有效性。


ping 函数   Ping()
{
判断Sockets有无初始化    SocketsInitialize()
{
   初始化
   {
    目标IP地址
    数据报文
    打开协议端口 API操作
    发送ICMP回应报文
    监听回应报文 IcmpSendEcho()
    {
     如果 ping 成功
      返回状态0
     否则
      返回报文状态的-1倍
    }
    处理报文的挂起事件   PingReturn()
    关闭网间协议 IcmpCloseHandle()
    Sockets清理SocketsCleanup
   }
   没有初始化
    返回失败信息 PingReturn()
}
}

Sockets初始化函数 SocketsInitialize()
{
调用API WSAStarup返回IP成功
}


取得目标IP地址 函数
{
WWW--->IP函数 funcIsIpAddress()
IP地址转换函数 AddressStringToLong()
}

WWW--->IP函数 funcIsIpAddress()
{
判断输入的WWW地址左边是什么形式
{
   有www.或者http://www.字符
   {
    去除www.或者http://www.
    判断剩下的地址
    {
     是IP
      直接返回
     不是IP
      通过主机名取得IP函数 funcGetIPFromHostName()
    }
   }
   没有www.或者http://www.字符
   {
    判断剩下的地址
    {
     是IP
      直接返回
     不是IP
      通过主机名取得IP函数 funcGetIPFromHostName()
    }
   }
}


取得状态码函数 GetStatusCode()
{
IP_SUCCESS
   返回"成功"
否则
   返回"失败"
}

Ping返回信息事件 PingReturn()
{
IP地址   ipAddress
成功状态 successStatus
存在时间 roundTripMilliseconds
}
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags: VB Ping 算法 ICMP
相关日志:
评论: 0 | 引用: 0 | 查看次数: 1687