抓到几个 TCP 包
按抓包模型,三个包里两个 TCP,count_pkts(["TCP", "UDP", "TCP"], "TCP") 交回几?
抓包模型(容器受限、只讲概念):count_pkts(包, 协议) 某协议几个;matches(包, 想要) 合不合过滤。
def count_pkts(pkts, proto):
"""抓到的包里,某协议(如 "TCP")的有几个。"""
return sum(1 for p in pkts if p == proto)
def matches(pkt, want):
"""一个包合不合过滤条件(协议名相等)。"""
return pkt == want
print(count_pkts(["TCP", "UDP", "TCP"], "TCP"))
全部评论