Purpose

Экономная схема построения QinQ

В статье Q-in-Q настройка в Cisco Catalyst 3750 я описывал схему построения туннеля 802.1q с использованием целых 4-х коммутаторов класом никак не ниже Cisco Catalyst 35XX серии. Не всегда приходится строить такие схемы для подключения сразу 10-ти и более бизнес клиентов. Иногда приходится строить тунель для 2-х, максимум 3-х клиентов с неясными перспективами на подключение новых клиентов. Поэтому приходится экономить, и тут можно съэкономить кардинально, убрав из этой классической схемы 2 свитча. Схема упростится за счет того, что мы с тегируемого порта свича, поставим кабель идущий в порт, находящийся в режиме dot1q-tunnel. Таким образом мы соорудим так называемый QinQ Loop. Схема коммутации будет выглядеть так:

По данной схеме: Сервер подключен к первому порту Switch1, Gi1/0/1. Он находится в режиме транка и на нем разрешены вланы 11, 12,13, которые терменируются на сервере. Второй порт Gi1/0/2 находится в режиме транка и на него приходят все вланы выше перечисленные вланы. Он нужен для того что бы подать на третий порт Gi1/0/3 пакеты которые будут упакованы в dot1q-tunnel. Порт Gi1/0/3 соответственно находится в режиме QinQ и упаковывает все во влан 10. Как видно из схемы между этими портами просто стоит кабель эзернет. Обычная витая пара. Влан 10 через порт Gi1/0/28 через транспортную сеть подает пакеты в свитч Switch 2.
Настройки перечисленных портов Switch1.
Порт Gi1/0/1:

interface GigabitEthernet11
description Server
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 11-13
switchport mode trunk
duplex full

Порт Gi1/0/2:

interface GigabitEthernet12
description QinQLoopTrunk
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 11-13
switchport mode trunk
duplex full

Порт Gi1/0/3:

interface GigabitEthernet13
description Q-IN-Q 
switchport access vlan 10
switchport mode dot1q-tunnel
switchport nonegotiate
no mdix auto
no cdp enable
spanning-tree bpdufilter enable
spanning-tree bpduguard enable
!

Порт Gi1/0/28

interface GigabitEthernet128
description ToSwitch2ViaTransport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10
switchport mode trunk
!

На коммутаторе Switch2 вся конфигурация повторяется, за исключением того, что порта сервера не будет, зато будет 2 порта клиентов в режиме access. Итого конфигурация портов на Switch2 будет такая:
Порт Gi1/0/2 транк порт для QinQ Loop:

interface GigabitEthernet12
description QinQLoopTrunk
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 11-13
switchport mode trunk
duplex full

Порт Gi1/0/3 QinQшный порт на Switch2:

interface GigabitEthernet13
description Q-IN-Q 
switchport access vlan 10
switchport mode dot1q-tunnel
switchport nonegotiate
no mdix auto
no cdp enable
spanning-tree bpdufilter enable
spanning-tree bpduguard enable
!

Gi1/0/28, порт с которого поступает трафик через транспортную сеть:

interface GigabitEthernet128
description ToSwitch1ViaTransport
switchport trunk encapsulation dot1q
switchport trunk allowed vlan 10
switchport mode trunk
!

Настройка этих портов пока идентична настройке таких же портов на Switch1.
А теперь того, чего нет на Switch1, настройка клиентских портов:
Gi1/0/4 — первый клиент:

interface GigabitEthernet14
description 'First'
switchport access vlan 11
switchport mode access
!

Gi1/0/5 — второй клиент:

interface GigabitEthernet15
description 'Second'
switchport access vlan 12
switchport mode access
!

Gi1/0/6 — третий клиент:

interface GigabitEthernet16
description 'Therd'
switchport access vlan 13
switchport mode access
!

На этом все. Настройки работают. Проверенно.

Filed in Cisco, Net | hilik

Configuration

All VMs and DUTs have management IP addresses on the network 128.89.91.0/24, with physical connection via wasabi and/or naboo. This IP network is not used for any test traffic.

VM hosts

host DNS IP
azzalle azzalle.gpolab.bbn.com 128.89.91.9
gotland gotland.gpolab.bbn.com 128.89.91.10
lagnace lagnace.gpolab.bbn.com 128.89.91.11
skaldia skaldia.gpolab.bbn.com 128.89.91.12

Vm host’s test network IP addresses and physical interfaces on Naboo.

host IP — NIC on naboo
azzalle 10.20.1.9 naboo (2nd NIC on left card)
gotland 10.20.1.10 naboo (3rd NIC on left card)
lagnace 10.20.1.11 naboo (4th NIC on left card)
skaldia 10.20.1.12 :naboo (the top NIC on the second card)

DUT’s Port and VLAN Assignments

It is advantageous to use the same port assignments for each DUT to ensure consistency and prevent confusion. Each DUT will have the same port assignment as shown below. This configuration allows for a single configuration to accommodate all planned testing without reconfiguration between tests.

Port Note
1 QinQ Port
2 management port
3 extra management port reserved for direct connection
4 host port
5 cvlan trunk — to port 6
6 svlan access — to port 5
7 cvlan trunk — to port 8
8 svlan access — to port 7
9 Not used
10 host port
11 host port
12 host port
13 cvlan trunk — to port 14
14 svlan access — to port 13
15 host port
16 Not used

Management IP Addresses

switch IP subnet VLAN management port wasabi’s port
poblano 128.89.91.6/25 900 2 gi0/2
habanero 128.89.91.7/25 900 2 gi0/3
basil 128.89.91.8/25 900 2 gi0/4

This section outlines the various tests to perform on a DUT as well as between DUTs.

Как загрузить и опубликовать видео на Инстаграм ТВ

Чтобы опубликовать видео, заходим на вкладку нашего канала и жмём «Загрузить видео» (для первого видео, кнопка будет располагаться посередине).

Затем, выбираем из своей галереи какое видео мы хотим «Опубликовать».

Выбрав видео, нам останется сделать название, описание ролика и выбрать обложку.

Выбрать обложку можно из кадров самого видео или загрузить произвольную с телефона.

Выполнив все настройки жмём Опубликовать. Видео перейдёт в стадию загрузки.

После завершения загрузки оно будет отображаться при переходе на ваш канал на ИГТВ, а также в профиле в разделе закреплённых историй, перед ними и выделенное соответствующим образом.

У каждого видео есть статистика по просмотрам, лайкам и комментариям. Скорее всего в будущем раздел статистики расширится.

Принцип Инстаграм ТВ основан на рекомендованном контенте. Таким образом, если ваш ролик нравится людям вы не будете ограничены своей аудиторией, а сразу можете получить множество просмотров и новых подписчиков.

Идеи для видео в Инстаграм

Integration Tests

QinQ between DUTs

Purpose
Verify that hosts in the same VLAN on opposite sides of a QinQ tunnel can communicate.

Method
Ping between hosts in the same tunneled VLAN.

MTU’s in QinQ

Purpose
For QinQ to work efficiently, the ports trunking QinQ frames must accept allow for a frame size of 1526. A particular vendor’s switch will require correct MTU configuration to prevent fragmentation.

According to 802.3ac frame size was increased to 1522 to allow a 1500 Byte MTU for VLAN tags. QinQ Trunks would require an MTU of 1504.

This ignores other MTU modification requirements such as:

  • MPLS VPN pass-through (two 4-byte labels)
  • Various Frame in Frame tunneling schemes (18 Bytes to 50 Bytes)

Method

ping 10.20.1.11 -M do -s "$((1500-20-8))" -c 1 > MTU_validation.txt
  • -M do: (return error if ping packet would fragment)
  • -s packetsize: size of payload:
    • 1500 = desired MTU
    • 20 = IP header size (would be IN the frame’s MTU)
    • 8 = ICMP header size (would be IN the frame’s MTU)

VLAN and QinQ VLAN on Same Port

Purpose
If this was feasible for two DUTs this test verifies that the hosts in this VLAN on separate DUTs can communicate.

Method
Simply ping between hosts in the same customer VLAN going out of the service port.

Latency: VLAN vs QinQ

Purpose
This test compares the best-case Round Trip latency of two hosts using a standard VLAN trunk and then a QinQ VLAN trunk.

VLAN Latency

QINQ Latency
As this test relies on end-to-end host connectivity over a QinQ tunnel, the setup is the same as «the test QinQ between DUTs». This diagram is included again here for completeness.

Method
This will be accomplished by using ping to report the round trip latency over 10 seconds. This test will ping the corresponding host once to «primes the queue» to prevent the ARP request from the first ping skewing the max, average and mdev values.

ping 10.20.1.11 -c 1; ping 10.20.1.11 -c 10 | tee aFile.txt

QinQ Traffic Simulations

Purpose
This test will involve inter-VLAN traffic tunneled across a QinQ Tunnel.

Method

TCP
TCP streams allow for max throughput simulations.

iperf -c 10.20.1.11 -i 60 -t $(("60*60*8"))>aFile.txt &

server:
iperf -s -i 60 > aFile.txt &

UDP
As UDP doesn’t have an ACK mechanism it is necessary to «prime the queue» to prevent the server from dropping any traffic due to fast-sender issues. This is necessary as iperf UDP server would see large amounts of dropped traffic until the ARP request resolved.

client:
ping -c 1 10.20.1.11; iperf -c 10.20.1.11 -u -i 1 -b 50M | tee aFile.txt

server:
iperf -s -u -i 1 | tee aFile.txt

Cisco

Configuration

basil#show running-config 
Building configuration...

Current configuration : 2772 bytes
!
version 12.2
no service pad
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname basil
!
enable secret 5 $1$m1O6$lT/GyoO4dZOw0bvD9j/wH/
enable password operator
!
no aaa new-model
system mtu routing 1500
ip subnet-zero
!
vtp mode transparent
!
no file verify auto
!
spanning-tree mode pvst
spanning-tree extend system-id
no spanning-tree vlan 1,128,667-668,900,3702-3704
!         
!
!
vlan internal allocation policy ascending
!
vlan 128,667-668,900,3702-3704 
!
!
interface FastEthernet1/0/1
!
interface FastEthernet1/0/2
 switchport access vlan 900
 switchport mode access
!
interface FastEthernet1/0/3
 switchport access vlan 900
 switchport mode access
!
interface FastEthernet1/0/4
 switchport access vlan 128
 switchport mode access
!
interface FastEthernet1/0/5
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 3702,3704
 switchport mode trunk
 switchport nonegotiate
!
interface FastEthernet1/0/6
 switchport access vlan 667
 switchport mode dot1q-tunnel
 no cdp enable
!
interface FastEthernet1/0/7
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 3703
 switchport mode trunk
 switchport nonegotiate
!
interface FastEthernet1/0/8
 switchport access vlan 668
 switchport mode dot1q-tunnel
 no cdp enable
!
interface FastEthernet1/0/9
!
interface FastEthernet1/0/10
 switchport access vlan 3704
 switchport mode access
!
interface FastEthernet1/0/11
 switchport access vlan 3702
 switchport mode access
!
interface FastEthernet1/0/12
 switchport access vlan 3703
 switchport mode access
!
interface FastEthernet1/0/13
 switchport trunk encapsulation dot1q
 switchport trunk allowed vlan 667
 switchport mode trunk
 switchport nonegotiate
!
interface FastEthernet1/0/14
 switchport access vlan 667
 switchport mode dot1q-tunnel
 no cdp enable
!
interface FastEthernet1/0/15
 switchport access vlan 667
 switchport mode access
!
interface FastEthernet1/0/16
!
interface FastEthernet1/0/17
!
interface FastEthernet1/0/18
!
interface FastEthernet1/0/19
!
interface FastEthernet1/0/20
!
interface FastEthernet1/0/21
!
interface FastEthernet1/0/22
!
interface FastEthernet1/0/23
!
interface FastEthernet1/0/24
!
interface GigabitEthernet1/0/1
!
interface GigabitEthernet1/0/2
!
interface GigabitEthernet1/1/1
 switchport trunk allowed vlan 128,667,668
 switchport mode trunk
 switchport nonegotiate
 switchport trunk dot1q ethertype 88A8
 speed auto 1000
 no cdp enable
!
interface GigabitEthernet1/1/2
 speed auto 1000
!
interface Vlan1
 no ip address
!
interface Vlan900
 ip address 128.89.91.8 255.255.255.128
!
ip classless
ip http server
!
!
!
!
!
control-plane
!
!
line con 0
 exec-timeout 0 0
line vty 0 4
 password operator
 login
line vty 5 15
 password operator
 login
!
end

Unit Tests

These tests are performed on a single DUT.

QinQ Tagging

Purpose
Verify that a given DUT’s QinQ port sends double-tagged QinQ frames in the expected format. For switches to understand that the trunking mechanism is a QinQ VLAN trunk the Ethernet’s Header must contain the appropriate QinQ header field type indication (0x88a8).

Method
Verify frames originating from the test host are tagged as appropriate using the Wireshark host.

  • HP: cvlans and svlans are used to distinguish port type. svlan trunk (QinQ) ports use the 0x88a8 value.
  • NEC: configures a QinQ trunk-port explicitly with the setting «switch dot1q ethertype 88a8» for a given port.
  • CISCO: The access port for the QinQ portion needs configured for QinQ, the QinQ trunk (ES) port is configured with 0x88a8.

QinQ with OpenFlow

Purpose
Verify that QinQ can operate within an OpenFlow enabled switch. This test verifies that a DUT can be configured to control QinQ VLANS while running the OpenFlow software. OpenFlow will not be configured to perform any flow-based traffic shaping.

Method
Enable OpenFlow and perform all experiments.

QinQ Tag Exclusivity

Purpose
This test insures that the customer VLAN ID and service VLAN ID ranges are mutually exclusive.

Method
The DUT is configured with service VLAN 667 used for QinQ as well as a customer VLAN 667. If successful the Wireshark host should see a frame with outer tag ID 667 as well as inner tag 667.

VLAN and QinQ VLAN on Same Port

Purpose
This test explores the behavior of allowing a normal VLAN trunk and a service VLAN (QinQ) trunk to be allowed on the same port.

Method

  • VLAN 128 is a customer VLAN going out of port 1.
  • Service VLAN 667 tunneling customer VLAN 3702 will also be trunked on port 1.
  • Use wireshark to verify the appropriate frames are tagged for VLAN 128 or QinQ-tagged with outer VLAN 667 and inner VLAN 3702.

Что снимают для IGTV бренды, СМИ и блогеры

Как продвигать Инстаграм компании — блог Амплифера

Пока в раздел «Популярное» IGTV попадают странные видео. Например, один из первых успешных кейсов — ролик Netflix, в котором американский актёр Коул Спроус на протяжении часа ест бургер, видео набрало около 1 млн просмотров. В то же время есть интересные и понятные кейсы, которые можно адаптировать под себя. Посмотрим, что снимают для IGTV СМИ, блогеры и бренды.

СМИ

Пожалуй, проще всех под новый формат адаптировались мировые издания, которые и так снимают видеосюжеты. Например, The Economist публикует короткие фильмы, посвящённые важным проблемам. Видео об экологическом туризме набрало более 1 млн просмотров:

ВВС News публикует в IGTV новости и человеческие истории. Например, репортаж о спасении детей из тайской пещеры набрал более 50 тысяч просмотров

Блогеры

Как продвигаться в «Историях» Инстаграма — гид Амплифера

1968.digital_russia — первый документальный сериал для мобильного телефона. Проект рассказывает о важных для мировой истории событиях, произошедших в 1968-м году. Сериал называют «мобильным» не только из-за вертикальной ориентации видео, сценарий полностью адаптирован под соцсети. Например, в серии «Гагарин против Луны» космонавты переписываются в Телеграме, а кадры с Нилом Армстронгом на Луне выглядят как «Истории». Потрясающий проект!

Блогер Карина Каспарянц снимает ролики в жанре байки. Например, в одной из серий девушка рассказывает, как фанатела по Джастину Биберу, видео набрало почти 100 тысяч просмотров. Такой формат подойдёт практически любому человеку, рассказывайте о своём опыте в бизнесе, делитесь интересными историями из жизни.

Бренды

Интересный вариант использования IGTV придумало агентство BBDO New York по заказу Bacardi. Вместе с танцором Les Twins они сняли клип «под диктовку фанатов». Сначала в «Историях» @officiallestwins пользователей спрашивали, где снимать клип, какую музыку выбрать, как должен двигаться артист. Готовый клип, снятый по результат голосования, опубликовали в IGTV.

«Билайн» — один из первых российских брендов, попробовавший новую платформу, компания запустила канал в день анонса сервиса. Сейчас в @beelinerus публикуют забавные видео о продуктах и используют ситуативный маркетинг.

NECHP

MTU’s in QinQ

QinQ between NEC and HP can transmit an MTU of 1500 without fragmentation.

Results:

ping 10.20.1.11 -M do -s "$((1500-20-8))" -c 1 > MTU_validation.txt
1480 bytes from 10.20.1.11: icmp_seq=1 ttl=64 time=0.434 ms

while adding 1 byte gave:

ping 10.20.1.11 -M do -s "$((1500-20-8+1))" -c 1
From 10.20.1.9 icmp_seq=1 Frag needed and DF set (mtu = 1500)

NOTE
Poblano’s configuration in this report shows a QinQ MTU of 1508 anddLAN Trunk MTU of 1504; this was due to an earlier configuration. Setting only the QinQ trunk to 1504 and leaving the dot-1q trunks as 1500 is the expected configuration.

See the NEC IP8800 Manual: Configuration Settings, Vol. 3, section 1.4.3 for more information.

VLAN and QinQ VLAN on Same Port

After configuring both the NEC’s and HP’s VLAN 128 to be a service VLAN (as outlined in the Unit test sections) end-to-end communication was possible.

Latency: VLAN vs QinQ

Ping across the tested ports. The first «ping -c 1» «primes the queue» to prevent the ARP
request from the first ping skewing the max, average and mdev values.

ping 10.20.1.11 -c 1; ping 10.20.1.11 -c 10 | tee aFile.txt

VLAN Trunk Only

--- 10.20.1.11 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9066ms
rtt min/avg/max/mdev = 0.192/0.239/0.315/0.036 ms

QinQ Trunk

--- 10.20.1.11 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9072ms
rtt min/avg/max/mdev = 0.196/0.244/0.284/0.038 ms

With all the extra hops for QinQ, an added RTL of 0.244-0.239=0.005ms seems more than reasonable. Given the short length of cabling this is a close approximation to «switching delay». Again, this was an Ideal baseline; there was no other traffic on the link for this baseline measurement.

QinQ Traffic Simulations

TCP
Naboo’s VM hosts were capping out at ~430 Mbps for TCP traffic (+/- 7Mbps based on quick scanning of my iperf log files per 10sec over 10 minutes). This is a limitation of Naboo (VM server) and is not a limitation of any DUTs. This was with only 1 pair communicating — full 1Gb capacity was available. Testing both pairs over QinQ still resulted in transmission of ~430Mbps per pair (logged every minute over 8 hours). I noticed no downward performance trend — but again I am currently eyeballing. With two end-to-end pairs, we’re still under the max capacity of the link.

iperf -c 10.20.1.11 -i 60 -t $(("60*60*8"))>file.txt &

UDP
UDP testing revealed minimal packet-loss and jitter was 0.023 ms ± 0.002ms.

ping -c 1 10.20.1.11; iperf -c 10.20.1.11 -u -i 1 -b 50M
Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *