【 tulaoshi.com - Linux 】
怎么不加mtu的判断?是否存在超长包现象?感觉比率会很高,尤其是在传送文件时候。
if (hook != priv->nomatch_hook) { if ((f = NG_HOOK_PRIVATE(hook)) == NULL) { NG_FREE_DATA(m, meta); return (EOPNOTSUPP); } M_PREPEND(m, EVL_ENCAPLEN, M_DONTWAIT); /* M_PREPEND takes care of m_len and m_pkthdr.len. */ if (m == NULL || (m->m_len < sizeof(*evl) && (m = m_pullup(m, sizeof(*evl))) == NULL)) { NG_FREE_META(meta); return (ENOMEM); } /* * Transform the Ethernet header into an Ethernet header * with 802.1Q encapsulation. */ bcopy(mtod(m, char *) + EVL_ENCAPLEN, mtod(m, char *), ETHER_HDR_LEN); evl = mtod(m, struct ether_vlan_header *); evl->evl_proto = evl->evl_encap_proto; evl->evl_encap_proto = htons(ETHERTYPE_VLAN); evl->evl_tag = htons(f->vlan); } NG_SEND_DATA(error, priv->downstream_hook, m, meta);怎么不加mtu的判断?是否存在超长包现象?感觉比率会很高,尤其是在传送文件时候。