MCPcopy Create free account
hub / github.com/FDio/vpp / create_stream

Method create_stream

test/test_l2bd_multi_instance.py:254–285  ·  view source on GitHub ↗

Create input packet stream for defined interface using hosts list. :param object src_if: Interface to create packet stream for. :param list packet_sizes: List of required packet sizes. :return: Stream of packets.

(self, src_if)

Source from the content-addressed store, hash-verified

252 self.logger.info("Bridge domain ID %d deleted" % bd_id)
253
254 def create_stream(self, src_if):
255 """
256 Create input packet stream for defined interface using hosts list.
257
258 :param object src_if: Interface to create packet stream for.
259 :param list packet_sizes: List of required packet sizes.
260 :return: Stream of packets.
261 """
262 packet_sizes = self.pg_if_packet_sizes
263 pkts = []
264 src_hosts = self.hosts_by_pg_idx[src_if.sw_if_index]
265 for dst_if in self.flows[src_if]:
266 dst_hosts = self.hosts_by_pg_idx[dst_if.sw_if_index]
267 for dst_host in dst_hosts:
268 pkt_info = self.create_packet_info(src_if, dst_if)
269 payload = self.info_to_payload(pkt_info)
270 src_host = random.choice(src_hosts)
271 p = (
272 Ether(dst=dst_host.mac, src=src_host.mac)
273 / IP(src=src_host.ip4, dst=dst_host.ip4)
274 / UDP(sport=1234, dport=1234)
275 / Raw(payload)
276 )
277 pkt_info.data = p.copy()
278 size = random.choice(packet_sizes)
279 self.extend_packet(p, size)
280 pkts.append(p)
281 self.logger.debug(
282 "Input stream created for port %s. Length: %u pkt(s)"
283 % (src_if.name, len(pkts))
284 )
285 return pkts
286
287 def verify_capture(self, dst_if):
288 """

Callers 1

run_verify_testMethod · 0.95

Calls 5

create_packet_infoMethod · 0.80
info_to_payloadMethod · 0.80
copyMethod · 0.80
extend_packetMethod · 0.80
appendMethod · 0.80

Tested by

no test coverage detected