Dell Networking SONiC: Käytäntöpohjaisen reitityksen määrittäminen

摘要: Tässä artikkelissa selitetään, miten käytäntöpohjainen reititys määritetään Dell Networking SONiC:ssa yksinkertaisen esimerkin avulla.

本文适用于 本文不适用于 本文并非针对某种特定的产品。 本文并非包含所有产品版本。

说明

Edellytykset

Käytämme vakiorajapintojen nimityksiä käsitteiden havainnollistamiseen. Katso artikkeli Dell Networking S-Series: Basic Interface Configuration - SONiC 4.0 tarjoaa lisätietoja liittymien nimeämisestä


Indeksi

 

Mikä on käytäntöpohjainen reititys?

Policy-Based Routing (PBR) tarjoaa menetelmän pakettien välittämiseen ohittamalla IP-reititystaulukossa olevat tiedot. Voit ottaa käyttöön käytäntöjä, jotka valikoivasti saavat paketit kulkemaan eri polkuja. Perinteinen IP-reititys välittää paketit vain paketin kohde-IP-osoitteen perusteella. PBR voidaan määrittää välittämään paketteja muiden ehtojen, kuten TCP/UDP-porttinumeroiden, lähteen IP-osoitteen, DSCP-arvon ja TCP-lippujen perusteella. Dell SONiC käyttää käytäntöpohjaiseen reititykseen työnkulkupohjaisia palvelukäytäntöjä. Edelleenlähetyskäytännöt koostuvat luokkakartoista, jotka valitsevat paketit ja asettavat toimintoja, jotka aiheuttavat paketin välittämisen ennalta määrättyyn seuraavaan hyppyyn tai käyttöliittymään ohittaen reititys- ja edelleenlähetystaulukoiden määrittämän polun. Voit määrittää useita vastaavuuden ja lähtevän liittymän tai seuraavan hypyn arvoja samassa käytännössä. Voit käyttää edelleenlähetyskäytäntöjä vaihdetulle tai reititetylle liikenteelle. Liikenne voidaan reitittää samaan VRF:ään, jota sisääntulorajapinta käyttää, tai eri VRF:ään.

Käytäntöihin perustuvan reitityksen avulla voit tarjota yhtäläiset käyttöoikeudet, protokollasidonnaisen reitityksen, lähteen huomioon ottavan reitityksen, vuorovaikutteiseen eräliikenteeseen vertaamisen ja erillisiin linkkeihin perustuvan reitityksen. Käytäntöpohjainen reititys on joustavampi mekanismi pakettien reitittämiseen kuin määränpään reititys.
 

Käytäntöpohjaisen reitityksen määritysohjeet

Dell SONiC toteuttaa PBR:n tarjoamalla modulaarisen kehyksen liikenteen luokitteluun ja edelleenlähetystoimintojen, kuten seuraavan IP-osoitteen siirron, käyttöönottoon valitussa liikenteessä.

PBR:n määrittäminen:

  1. Luokittele (valitse) käytäntöpohjaisen reitityksen liikenne käyttöoikeusluetteloiden tai pakettiotsikoiden L2-, L3- tai L4-kenttien avulla.
  2. Määritä käytäntökartassa kullekin luokitellulle työnkululle suoritettavat edelleenlähetystoiminnot.
  3. Käytä edelleenlähetyskäytäntöä sisääntuloliitännöissä – yleisesti kaikissa kytkinliitännöissä, määritetyssä liittymässä, VLAN-verkossa tai porttikanavassa
Pähkinänkuoressa:

Käytäntöpohjaisen reitityksen määritysvaiheet


HUOMAUTUS: In Dell SONiC:
  • Jos saapuva liikenne ei löydä vastinetta jostakin käytäntökartan lausekkeesta liittymässä/vlan/portchannel/global, se välitetään vakioreittitaulukon mukaisesti.
  • Edelleenlähetyskäytäntöä tuetaan vain sisääntuloliittymissä.
  • Edelleenlähetyskäytännöt voivat välittää vain valittua liikennettä; ne eivät voi vangita, vaihtaa tai reitittää liikennettä suorittimeen.
  • Edelleenlähetyskäytännöt, joissa on next hop- ja next-hop-group-toimintoja, koskevat vain reititettyä L3-liikennettä.
  • Ethernet- tai porttikanavan uloskäyntiliitäntää käyttävät edelleenlähetyskäytännöt koskevat vain kytkettyä L2-liikennettä.
  • Edelleenlähetyskäytännöt eivät koske suorittimeen suuntautuvaa liikennettä (IP-kohdeosoite on sama kuin kytkimen osoite) tai suorittimeen loukkuun jäänyttä liikennettä.
  • Kun käytät edelleenlähetyskäytäntöä yleisesti kaikissa liittymissä, seuraavan hypyn on oltava oletusarvoisessa VRF:ssä, ellet määritä muuta kuin oletusarvoista VRF:ää käytäntökartan komennolla set {ip | ipv6} next-hop ip-address vrf vrf-name.

 

Konfiguraation syntaksi

Luokkakartan määrittäminen liikenteen luokittelua varten

Voimme luokitella (sovittaa) saapuvan liikenteen seuraamalla luokkakartan menetelmiä.

  1. IPv4:n, IPv6:n tai MAC:n käyttäminen Käyttöoikeusluettelo
  2. L2–L4-otsikkokenttien käyttäminen

Komennon syntaksi Access-luetteloa käytettäessä luokkakartan liikenteen täsmäämiseksi.

Jos määritämme käyttöoikeusluettelon vastaamaan luokkakartan liikennettä, varmista, että määrität käyttöoikeusluettelon.

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# class-map {CLASSMAP-NAME} match-type acl 
DELLSONiC(config-class-map)# match access-group {ip, ipv6, mac} {Access-List-name}

Komennon syntaksi L2–L4-otsikkokenttiä käytettäessä

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# class-map {CLASSMAP-NAME} match-type fields match-all
DELLSONiC(config-class-map)# match {MATCH-CRITERIA}
 
The following is the Match Criteria

  dei                  Match packets using DEI value
  destination-address  Match packets using destination address
  dscp                 Match packets using DSCP value
  ethertype            Match packets using ethertype
  ip                   Match packets using IP/IPv6 protocol
  l4-port              Match packets using TCP/UDP port
  pcp                  Match packets using PCP
  source-address       Match packets using source address
  tcp-flags            Match packets using TCP flags
  vlan                 Match packets using VLAN ID

 

Käytäntökartan määrittäminen

PBR-edelleenlähetyskäytäntö määrittää edelleenlähetystoiminnot, joilla liikenne täsmäytetään käytäntöpohjaiseen reititykseen. Edelleenlähetyskäytäntö tukee seuraavia toimintoja:

  • Aseta seuraava hyppy - Reitittää IPv4-liikenteen seuraavaan IPv4-hyppyyn; reitittää IPv6-liikenteen seuraavaan IPv6-siirtoon.
  • Aseta seuraavan hypyn ryhmä – Määrittää ryhmän, josta paras seuraavan hypyn IPv4- tai IPv6-osoite valitaan.
  • Aseta liittymä - Välitä L2-liikenne määritettyyn lähtevään liitäntään.
  • Aseta käyttöliittymän null - Pudottaa vastaavan liikenteen, jos null-liitäntä on asetettu tai jos mikään määritetyistä seuraavista hypyistä ei ole tavoitettavissa tai jos määritetty lähtevä rajapinta ei ole L2 ja linkitä ylös.
  • Aseta replikointiryhmä - Käytetään liikenteen replikointiin anycast-palvelimiin, suunniteltu ratkaisemaan hajautusongelma kohdassa RFC7690 kuvatulla tavalla.

Komennon syntaksi

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# policy-map {POLICYMAP-NAME} type forwarding  
DELLSONiC(config-policy-map)# 
DELLSONiC(config-policy-map)# class {CLASS-MAP-NAME} priority {Priority-value}

Enter a priority number (0-4095) to specify the order in which a class map is applied in the policy map to match traffic in the flow. A higher priority class map is processed before a lower priority.


If next hop is a IP address

DELLSONiC(config-policy-map-flow)# set ip next-hop {IP-ADDRESS}


If next hop is a IPv6 address

DELLSONiC(config-policy-map-flow)# set ipv6 next-hop {IPv6 Address}


If we need a specific interface where the traffic is to be forwarded

DELLSONiC(config-policy-map-flow)# set interface {Eth, Null, PortChannel } {interface number}


If we have a IPv4/IPv6 Next Hop Group

DELLSONiC(config-policy-map-flow)# set ip next-hop-group {IPv4 Next Hop Group}
DELLSONiC(config-policy-map-flow)# set ipv6 next-hop-group {IPv6 Next Hop Group}


If we have a IPv4/IPv6 Replication Group

DELLSONiC(config-policy-map-flow)# set ip replication-group {Ipv4 Replication Group}
DELLSONiC(config-policy-map-flow)# set ipv6 replication-group {Ipv4 Replication Group}

 

Palvelukäytännön määrittäminen (käytäntökartan käyttäminen liittymässä)

Rajapinnassa tai alirajapinnassa:

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# interface {Eth slot/port[/breakout-port] [.subinterface]}
DELLSONiC(config-if-Eth)# service-policy type forwarding in {policy-map-name}

VLAN-liitännöissä:

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# interface Vlan {vlan-id}
DELLSONiC(conf-if-Vlan)# service-policy type forwarding in {policy-map-name}

Porttikanavien liitännöissä,

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# interface PortChannel {portchannel-number}
DELLSONiC(conf-if-po)# service-policy type forwarding in {policy-map-name}

Maailmanlaajuisesti kaikissa kytkinliitännöissä

When you apply a forwarding policy globally on all interfaces, the next-hops must be in the default VRF unless you set a non-default VRF using the set {ip | ipv6} next-hop ip-address vrf vrf-name command in the policy map.

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# service-policy type forwarding in {policy-map-name}

 

Tarkista

Use the Following commands to verify Class Map

DELLSONiC# show class-map {class-map-name}

Use the Following commands to verify policy map

DELLSONiC# show policy-map {POLICY-MAP-NAME}


Use the Following commands to service Policy

DELLSONiC# show policy-map type forwarding

DELLSONiC# show service-policy interface {Interface}

DELLSONiC# show service-policy summary

 

Esimerkkimääritys

Tarkastellaan seuraavaa topologiaa.

Topologia

DELLSONiC:llä ei ole reittejä 50.0.0.0/24- ja 60.0.0.0/24-versioihin.

DELLSONiC# show ip route 
Codes:  K - kernel route, C - connected, S - static, B - BGP, O - OSPF
        > - selected route, * - FIB route, q - queued route, r - rejected route
       Destination        Gateway                                                                    Dist/Metric   Last Update 
--------------------------------------------------------------------------------------------------------------------------------
 C>*   1.1.1.1/32         Direct                          Loopback0                                  0/0           09:18:16 ago
 C>*   10.0.0.0/24        Direct                          Eth1/1                                     0/0           09:17:56 ago
 C>*   20.0.0.0/24        Direct                          Eth1/2                                     0/0           01:58:41 ago
 C>*   30.0.0.0/24        Direct                          Eth1/3                                     0/0           09:14:38 ago

 

Tavoite:

Liikenne palvelinklusteriin 50.0.0.0/24 reititetään seuraavaan 20.0.0.2-siirtoon. Liikenne palvelinklusteriin 60.0.0.0/24 reititetään seuraavaan 30.0.0.2-siirtoon.
 

Määritys

Määritetään luokkakartta. Tässä luokittelemme liikenteen eri parametrien perusteella.
Luokan kartta MATCH_IP_OF_SERVER-1 Vastaavuuskriteeri on DST-IP 50.0.0.0/24.
Luokkakartalla MATCH_IP_OF_SERVER-2, vastaavuuskriteerit ovat DST-IP 60.0.0.0/24.

admin@DELLSONiC:~$ sonic-cli
DELLSONiC#
DELLSONiC# configure
DELLSONiC(config)# class-map MATCH_IP_OF_SERVER-1 match-type fields match-all
DELLSONiC(config-class-map)# description "MATCH IP ADDRESS of SERVER FARM 1"
DELLSONiC(config-class-map)# match destination-address ip 50.0.0.0/24
DELLSONiC(config-class-map)# exit
DELLSONiC(config)#
DELLSONiC(config)# class-map MATCH_IP_OF_SERVER-2 match-type fields match-all
DELLSONiC(config-class-map)# description "MATCH IP ADDRESS of SERVER FARM 2"
DELLSONiC(config-class-map)# match destination-address ip 60.0.0.0/24
DELLSONiC(config-class-map)# exit
DELLSONiC(config)# exit
DELLSONiC#

Määritetään käytäntökartta.
Tässä määritetään, miten seuraavaksi on toimittava, jos liikenne vastaa tilannetta. Tässä tapauksessa, jos liikenne vastaa tiettyä kohde-IP-osoitetta, välitä tiettyyn seuraavan hypyn IP-osoitteeseen.

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# policy-map FORWARD_TO_SERVER type forwarding
DELLSONiC(config-policy-map)# class MATCH_IP_OF_SERVER-2 priority 100
DELLSONiC(config-policy-map-flow)# set ip next-hop 30.0.0.2
DELLSONiC(config-policy-map-flow)# exit
DELLSONiC(config-policy-map-flow)#
DELLSONiC(config-policy-map)# class MATCH_IP_OF_SERVER-1 priority 100
DELLSONiC(config-policy-map-flow)# set ip next-hop 20.0.0.2
DELLSONiC(config-policy-map-flow)# exit
DELLSONiC(config-policy-map)# exit
DELLSONiC(config)#

Sovelletaan käytäntökarttaa palvelukäytäntönä Eth 1/1:n käyttöliittymään.

admin@DELLSONiC:~$ sonic-cli
DELLSONiC# configure
DELLSONiC(config)# interface Eth 1/1
DELLSONiC(config-if-Eth1/1)# service-policy type forwarding in FORWARD_TO_SERVER
DELLSONiC(config-if-Eth1/1)# end


Määritysten tarkistaminen

Tarkistetaan luokkakartan kokoonpano. Tässä voimme nähdä MATCH_IP_OF_SERVER-1 Vastaavuuskriteerit ovat DST-IP 50.0.0.0/24. Luokkakartalla MATCH_IP_OF_SERVER-2, vastaavuuskriteerit ovat DST-IP 60.0.0.0/24.

DELLSONiC# show class-map MATCH_IP_OF_SERVER-1
Class-map MATCH_IP_OF_SERVER-1 match-type fields
  Description: "MATCH IP ADDRESS of SERVER FARM 1"
  Match:
    dst-ip 50.0.0.0/24
  Referenced in flows:
    policy FORWARD_TO_SERVER at priority 100
DELLSONiC#

 

DELLSONiC# show class-map MATCH_IP_OF_SERVER-2
Class-map MATCH_IP_OF_SERVER-2 match-type fields
  Description: "MATCH IP ADDRESS of SERVER FARM 2"
  Match:
    dst-ip 60.0.0.0/24
  Referenced in flows:
    policy FORWARD_TO_SERVER at priority 100
DELLSONiC#

Käytäntökartta määrittää, mikä on luokkakartan alle luokitellun liikenteen seuraava hypy.

DELLSONiC# show policy-map type forwarding
Policy FORWARD_TO_SERVER Type forwarding
  Description:
  Flow MATCH_IP_OF_SERVER-2 at priority 100
    Description:
    set ip nexthop 30.0.0.2
  Flow MATCH_IP_OF_SERVER-1 at priority 100
    Description:
    set ip nexthop 20.0.0.2
  Applied to:
    Eth1/1 at Ingress

 

DELLSONiC# show policy-map FORWARD_TO_SERVER
Policy FORWARD_TO_SERVER Type forwarding
  Description:
  Flow MATCH_IP_OF_SERVER-2 at priority 100
    Description:
    set ip nexthop 30.0.0.2
  Flow MATCH_IP_OF_SERVER-1 at priority 100
    Description:
    set ip nexthop 20.0.0.2
  Applied to:
    Eth1/1 at Ingress
DELLSONiC#

Palvelukäytäntö määrittää, missä käytäntökarttaa käytetään.

DELLSONiC# show service-policy summary
Eth1/1
    forwarding policy FORWARD_TO_SERVER at ingress
CtrlPlane
    qos policy oob-qos-policy at ingress

 

DELLSONiC# show service-policy interface Eth 1/1
Eth1/1
  Policy FORWARD_TO_SERVER type forwarding at ingress
  Description:
    Flow MATCH_IP_OF_SERVER-2 at priority 100 (Active)
      Description:
      set ip nexthop 30.0.0.2 (Selected)
      Packet matches: 616 frames 62832 bytes
    Flow MATCH_IP_OF_SERVER-1 at priority 100 (Active)
      Description:
      set ip nexthop 20.0.0.2 (Selected)
      Packet matches: 50 frames 5100 bytes
DELLSONiC#

 

DELLSONiC# show service-policy policy-map FORWARD_TO_SERVER
Eth1/1
  Policy FORWARD_TO_SERVER type forwarding at ingress
  Description:
    Flow MATCH_IP_OF_SERVER-2 at priority 100 (Active)
      Description:
      set ip nexthop 30.0.0.2 (Selected)
      Packet matches: 616 frames 62832 bytes
    Flow MATCH_IP_OF_SERVER-1 at priority 100 (Active)
      Description:
      set ip nexthop 20.0.0.2 (Selected)
      Packet matches: 50 frames 5100 bytes
DELLSONiC#

 

Entä jos seuraava hyppy on Down.

Harkitse, että seuraava hyppy 20.0.0.2 on Down. Katso alla oleva tuotos. Voimme nähdä palvelukäytäntöliittymän Eth 1/1 ja näyttää palvelukäytäntökäytäntökartan FORWARD_TO_SERVER. 20.0.0.2 puuttuu "(valittu)", kun taas 30.0.0.2, joka on tavoitettavissa, on "(valittu)".

Tässä laskurit (pakettiottelu ja kehys) kasvavat, mutta paketti putoaa, koska seuraava hyppy ei ole tavoitettavissa.

DELLSONiC# show service-policy policy-map FORWARD_TO_SERVER
Eth1/1
  Policy FORWARD_TO_SERVER type forwarding at ingress
  Description:
    Flow MATCH_IP_OF_SERVER-2 at priority 100 (Active)
      Description:
      set ip nexthop 30.0.0.2 (Selected)
      Packet matches: 616 frames 62832 bytes
    Flow MATCH_IP_OF_SERVER-1 at priority 100 (Active)
      Description:
      set ip nexthop 20.0.0.2                          ====>Selected missing
      Packet matches: 50 frames 5100 bytes

30.0.0.2 on tavoitettavissa ja valittu. 20.0.0.2 ei ole tavoitettavissa, joten valittu puuttuu.

DELLSONiC# show service-policy interface Eth 1/1
Eth1/1
  Policy FORWARD_TO_SERVER type forwarding at ingress
  Description:
    Flow MATCH_IP_OF_SERVER-2 at priority 100 (Active)
      Description:
      set ip nexthop 30.0.0.2 (Selected)
      Packet matches: 616 frames 62832 bytes
    Flow MATCH_IP_OF_SERVER-1 at priority 100 (Active)
      Description:
      set ip nexthop 20.0.0.2                          ====>Selected missing
      Packet matches: 50 frames 5100 bytes

受影响的产品

Enterprise SONiC Distribution, PowerSwitch S5212F-ON, PowerSwitch S5224F-ON, PowerSwitch S5232F-ON, PowerSwitch S5248F-ON, PowerSwitch S5296F-ON, PowerSwitch Z9264F-ON, PowerSwitch Z9432F-ON
文章属性
文章编号: 000222385
文章类型: How To
上次修改时间: 07 3月 2024
版本:  4
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。