애플리케이션 기반 다중 경로 라우팅
애플리케이션 기반 다중 경로 라우팅 개요
비디오 및 음성의 트래픽은 패킷 손실, 지연, 지터에 민감합니다. 패킷 손실은 음성 및 화상 통화 품질 저하로 직접 발생합니다. 음성 또는 화상 통화에서 확인할 수 있습니다.
이러한 민감한 애플리케이션 트래픽의 적시에 전달을 보장하기 위해, 애플리케이션 기반 multipath 라우팅(이 문서에서 multipath 라우팅이라고도 함)은 SRX 시리즈 디바이스에서 지원되어 전송 디바이스가 패킷 사본을 생성하고 두 개 이상의 WAN 링크를 통해 각 사본을 전송할 수 있도록 합니다.
Multipath는 SLA 구성을 기반으로 두 개 이상의 경로를 식별하고 식별된 모든 경로에서 원본 트래픽의 사본을 보냅니다.
다른 한편으로, 수신된 패킷의 여러 복사본 중 수신 디바이스는 첫 번째 수신 패킷을 선택하고 후속 패킷을 삭제합니다. 수신 디바이스에서 패킷 사본이 진행 중인 동안 multipath는 결합된 링크의 지터 및 패킷 손실을 계산한 다음 개별 링크에서 동일한 트래픽에 대한 지터 및 패킷 손실을 추정합니다. 트래픽에 사용되는 개별 링크 대신 결합된 링크가 사용될 때 패킷 손실 감소를 비교할 수 있습니다.
애플리케이션 트래픽의 여러 사본을 전송하면 패킷 손실 또는 지연이 있는 경우 다른 링크가 여전히 패킷을 엔드포인트로 전달할 수 있습니다.
SRX 시리즈 디바이스는 독립형 모드에서 릴리스 15.1X49-D160 Junos OS 시작하는 애플리케이션 기반 multipath 라우팅을 지원합니다.
SRX 시리즈 디바이스는 Junos OS 릴리스 19.2R1부터 섀시 클러스터 모드에서 릴리스 15.1X49-D170을 Junos OS 애플리케이션 기반 multipath 라우팅을 지원합니다.
다중 경로 라우팅은 다음 기능을 활용합니다.
-
심층 패킷 검사(DPI)의 애플리케이션 식별 세부 정보
-
패킷 전달 기능을 위한 APBR 기능
-
SLA 연결을 위한 AppQoE 서비스.
지원되는 사용 사례
-
SD-WAN 허브 및 스포크 토폴로지
-
SD-WAN 메시 토폴로지
제한
-
선택한 모든 WAN 링크는 목적지에 대한 ECMP 경로여야 합니다.
-
multipath 라우팅 세션의 일부가 되어야 하는 선택된 모든 WAN 인터페이스는 하나의 단일 영역에 속해야 합니다.
-
다중 경로 라우팅 기능은 두 개의 북엔드 보안 디바이스 사이에서만 지원됩니다.
Multipath 라우팅의 이점
-
SD-WAN 사용 사례에서의 Multipath 지원은 패킷 손실 감소, 패킷 전달 속도 빨라진 지터, 특히 음성 및 비디오 트래픽의 트래픽 서비스 품질 향상을 통해 애플리케이션 경험을 향상합니다.
Multipath 라우팅의 워크플로우 이해
다음 시퀀스는 multipath 라우팅 적용에 포함됩니다.
-
Junos OS 애플리케이션 식별은 애플리케이션을 식별하고 애플리케이션이 식별되면 해당 정보가 애플리케이션 시스템 캐시(ASC)에 저장됩니다.
-
애플리케이션 정책 기반 라우팅(APBR)은 애플리케이션 시스템 캐시(ASC) 모듈을 쿼리하여 애플리케이션 속성 세부 정보를 얻습니다.
-
APBR은 애플리케이션 세부 정보를 사용하여 APBR 프로필(애플리케이션 프로필)에서 일치하는 규칙을 찾습니다. 일치하는 규칙이 발견되면 트래픽은 경로 조회를 위해 지정된 라우팅 인스턴스로 리디렉션됩니다.
-
AppQoE는 세션에 대해 SLA가 활성화되었는지 확인합니다. 세션이 SLA 측정을 위한 후보이고 multipath 라우팅이 구성된 경우 multipath 라우팅이 트리거됩니다.
-
SLA 규칙에 따라 multipath 라우팅은 언더레이 링크 유형과 패킷 복제가 수행해야 하는 해당 오버레이를 획득합니다. 다중 경로 라우팅은 SLA 규칙의 구성에 따라 트리거될 수 있습니다. 특정 애플리케이션에 대한 SLA 규칙 내에서 multipath 라우팅이 구성되면, AppQoE 기능은 SLA 규칙과 일치하는 해당 애플리케이션의 모든 세션에 대해 비활성화됩니다.
-
애플리케이션 트래픽 및 구성된 대역폭 제한을 기반으로 multipath는 2개 이상의 경로를 식별하고 식별된 모든 경로에서 원본 트래픽의 사본을 트리거합니다. 다중 경로 라우팅 경로 선택은 오버레이 경로에서 수행됩니다. 대역폭을 제한하기 위한 매개 변수는 언더레이 링크 속도를 기반으로 하며, 선택은 링크 유형을 기반으로 합니다.
-
수신 디바이스에서 패킷 사본이 진행 중인 동안 multipath는 결합된 링크의 지터 및 패킷 손실을 계산한 다음 개별 링크에서 동일한 트래픽에 대한 지터 및 패킷 손실을 추정합니다.
-
수신 디바이스에서 multipath 라우팅은 다른 링크를 통해 도착한 세션의 패킷을 수용하고, 다른 CoS 대기열에 도착하는 패킷의 시퀀스를 유지하고, 중복되는 패킷을 삭제합니다.
다중 경로 라우팅은 대역폭 제한에 도달할 때까지 규칙에 속한 모든 링크에서 패킷을 복사합니다. 대역폭 제한은 해당 규칙에 대해 식별된 최소 링크 속도를 기반으로 계산됩니다. 이는 다중 경로 라우팅 규칙과 일치하는 모든 애플리케이션에 대해 모든 세션에 적용됩니다. 제한에 도달하면, multipath 라우팅은 패킷 복사를 중단하고 multipath 라우팅 구성의 max-time-wait 옵션에서 구성된 대로 기간 동안 타이머를 시작합니다. 타이머가 만료되면 패킷의 복사를 다시 시작합니다.
AMR 개선 사항
Junos OS 릴리스 21.2R1부터 AMR에 다음과 같은 개선 사항이 도입되었습니다.
- 역 트래픽에 대한 AMR 지원
- 주문 외 패킷을 위한 큐잉 메커니즘
- APBR 프로필에 대한 AMR 지원
- 링크 선택
- SLA 위반 모드 또는 독립 실행형 모드의 AMR
- IPv6 트래픽 지원
- IPsec 및 GRE(Generic Routing Encapsulation) 세션을 통한 AMR 지원
역 트래픽에 대한 AMR 지원
역방향 트래픽에 multipath 기능을 적용할 수 있습니다. 이제 전송 디바이스와 수신 디바이스 모두 패킷 사본을 생성하고 두 개의 WAN 링크를 통해 각 사본을 대상 디바이스로 보낼 수 있습니다. 이러한 개선은 양방향으로 민감한 애플리케이션 트래픽의 무중단 전달을 보장합니다.
기본적으로 역방향 트래픽에 대한 AMR은 비활성화됩니다. 다음 CLI 옵션으로 활성화할 수 있습니다.
set security advance-policy-based-routing multipath-rule rule-name enable-reverse-wing
역방향 트래픽에 대해 AMR을 비활성화하려면 다음 CLI 옵션을 사용합니다.
delete security advance-policy-based-routing multipath-rule rule-name enable-reverse-wing
디바이스가 HA 모드에서 작동할 때 역방향 날개 트래픽에 대한 AMR 지원을 사용할 수 있습니다. HA 페일오버 중에 대기열의 패킷이 누락된다는 점에 유의하십시오.
주문 외 패킷을 위한 큐잉 메커니즘
릴리스 21.2R1 Junos OS 시작하여 수신 디바이스의 주문 외 패킷에 대한 큐잉 메커니즘이 개선되었습니다.
이전에는 AMR 수신 디바이스가 주문 외 패킷을 폐기하여 서비스 품질이 저하되었습니다. 큐잉 메커니즘을 사용하면 수신 디바이스가 주문 외 패킷을 수신하면 더 많은 패킷이 도착할 때까지 더 대기한 다음 짧은 시간 동안 대기열에 해당 패킷을 버퍼링합니다. 이 버퍼링은 패킷의 재배열에 도움이 되며 패킷 폐기를 방지합니다.
APBR 프로필에 대한 AMR 지원
릴리스 21.2R1 Junos OS 시작하여 보안 디바이스는 APBR 정책으로 구성된 APBR 프로파일과 함께 사용될 때 AMR을 지원합니다. 소스 주소, 대상 주소 및 애플리케이션을 일치 조건으로 정의하여 APBR 정책을 생성할 수 있습니다.
이전 Junos OS 릴리스에서는 APBR 프로필을 수신 트래픽의 들어오는 보안 영역에 연결할 수 있습니다. 이 경우 APBR은 보안 영역 기준에 따라 적용되었습니다.
다음 예는 소스 주소, 대상 주소 및 애플리케이션을 일치 조건으로 정의하여 APBR 정책의 구성 조각을 보여줍니다. SLA 규칙은 APBR 정책 규칙과 일치하는 트래픽에 적용됩니다. SLA 규칙과 연관된 multipath 규칙이 적용되고 세션에 대해 multipath 라우팅 기능이 활성화됩니다.
set security advance-policy-based-routing multipath-rule amr-rule1 number-of-paths 2 set security advance-policy-based-routing multipath-rule amr-rule1 bandwidth-limit 30 set security advance-policy-based-routing multipath-rule amr-rule1 max-time-to-wait 60 set security advance-policy-based-routing multipath-rule amr-rule1 application junos:SSH set security advance-policy-based-routing multipath-rule amr-rule1 application junos:HTTP set security advance-policy-based-routing multipath-rule amr-rule1 link-type MPLS set security advance-policy-based-routing multipath-rule amr-rule1 link-type IP set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:RTP set security advance-policy-based-routing profile apbr1 rule rule1 then routing-instance TC1_VPN set security advance-policy-based-routing profile apbr1 rule rule1 then sla-rule sla1 set security advance-policy-based-routing sla-rule sla1 multipath-rule amr-rule1 set security zones security-zone trust advance-policy-based-routing-profile apbr1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match source-address 10.4.0.1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match destination-address 10.5.0.1 set security advance-policy-based-routing from-zone trust policy sla_policy1 match application junos-RTP set security advance-policy-based-routing from-zone trust policy sla_policy1 then application-services advance-policy-based-routing-profile apbr1
링크 선택
이전 릴리스에서 애플리케이션 기반 다중 경로 라우팅의 경우 링크 선택 메커니즘은 기본(처음 두 개의 사용 가능한 링크 중 하나)이거나 링크 유형(IP/MPLS) 구성 AppQoE 언더레이 인터페이스 구성에 기반했습니다.
Junos OS 릴리스 21.2R1부터 일반 라우팅 캡슐화(GRE) 및 보안 터널(st)으로 링크 선호 옵션을 지정할 수 있습니다. 디바이스는 multipath 라우팅을 위해 지정된 인터페이스 중 하나를 직접 선택합니다.
를 구성 link-preference
하지 않은 경우, AMR은 구성된 경로에서 사용 가능한 처음 두 개의 링크에서 링크를 선택합니다.
다음 CLI 옵션을 사용하여 링크 기본 설정을 지정할 수 있습니다.
set security advance-policy-based-routing multipath-rule rule-name link-preferences [st0.0 | st0.1}
SLA 위반 모드 또는 독립 실행형 모드의 AMR
Junos OS 릴리스 21.2R1부터 AMR은 다음 두 가지 모드 중 하나에서 활성화됩니다.
-
SLA 위반 모드 - AppQoE가 모든 링크에서 SLA 위반을 감지하면 AMR이 활성화됩니다. 타이머 구성에 따라 모든 링크에서 SLA가 충족되면 AMR이 비활성화됩니다.
-
독립형 모드 - SLA 메트릭을 구성하지 않고 AMR을 구성한 경우 AMR은 AppQoE 상태와 독립적으로 활성화됩니다. 이 모드에서는 대역폭 제한에 도달하면 AMR이 기본 기간에 대해 일시 중지된 다음 다시 시작됩니다.
예제:
다음은 SLA 메트릭의 samp 구성입니다. SLA 메트릭은 AppQoE가 링크의 SLA를 평가하는 데 사용하는 요구 사항 매개 변수를 지정합니다. SLA를 달성하기 위해 AppQoE는 네트워크를 모니터링하여 장애 또는 혼잡의 원인을 파악합니다. 링크의 성능이 SLA에 명시된 대로 허용 가능한 수준 미만인 경우, 상황은 SLA 위반으로 간주됩니다. 모든 링크에서 LA 위반이 발견되면, AMR은 SLA 위반 모드에서 활성화됩니다.
set security advance-policy-based-routing metrics-profile metric1 sla-threshold delay-round-trip 50000 set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter 10000 set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter-type egress-jitter set security advance-policy-based-routing metrics-profile metric1 sla-threshold packet-loss 4 set security advance-policy-based-routing metrics-profile metric1 sla-threshold match all set security advance-policy-based-routing sla-rule sla1 metrics-profile metric1
위의 예와 같이 SLA 메트릭 구성을 AMR 구성에서 사용할 수 없는 경우, AMR은 독립형 모드에서 활성화됩니다.
IPv6 트래픽 지원
애플리케이션 기반 multipath 라우팅은 IPv6 트래픽을 지원합니다.
- IPv4 터널을 통한 IPv6 트래픽(Junos OS 릴리스 21.2R1)
- IPv6 터널을 통한 IPv6 트래픽(Junos OS 릴리스 21.3R1)
IPsec 및 GRE(Generic Routing Encapsulation) 세션을 통한 AMR 지원
- GRE 없이 직접 IPsec 터널을 통한 애플리케이션 기반 다중 경로 라우팅(Junos OS 릴리스 21.2R1)
- IPsec 없이 직접 GRE(Generic Routing Encapsulation) 터널을 통한 애플리케이션 기반 다중 경로 라우팅(Junos OS 릴리스 21.2R1)
- IPv6 트래픽에 대한 GRE 없이 직접 IPsec 터널을 통한 애플리케이션 기반 다중 경로 라우팅(Junos OS 릴리스 21.3R1)
- IPv6 트래픽에 대한 IPsec 없이 직접 GRE 터널을 통한 애플리케이션 기반 다중 경로 라우팅(Junos OS 릴리스 21.3R1)
- IPv6 트래픽을 위한 MPLS-over-GRE-over-IPsec을 통한 애플리케이션 기반 다중 경로 라우팅(Junos OS 릴리스 21.3R1)
더 보기
애플리케이션 기반 다중 경로 라우팅 샘플 구성
샘플 애플리케이션 기반 multipath 라우팅 구성(허브 및 스포크 토폴로지)
이 섹션에서는 허브 및 스포크 토폴로지용 애플리케이션 기반 multipath 라우팅 구성 예시를 다룹니다. 구성은 APBR에서 설정한 SLA를 사용하며 APPQoE와 독립적으로 작동합니다. APPQoE SLA의 경우 애플리케이션 경험 품질을 참조하십시오. 기본 설정 기반의 링크 선택, 링크 유형 기반 경로 선택, IPsec 및 GRE 터널을 통한 multipath 라우팅 지원과 같은 추가 기능을 위해 디바이스를 구성할 수 있습니다. 다중 경로 라우팅은 Contrail Service Orchestrator 통해 구성할 수 있습니다. 자세한 내용은 Contrail Service Orchestration(CSO) 구축 가이드 를 참조하십시오.
스포크 측 디바이스 기본 구성
user@host#
set security advance-policy-based-routing profile profile1 rule r1 match dynamic-application junos:HTTPuser@host#
set security advance-policy-based-routing profile profile1 rule r1 match dynamic-application junos:SIPuser@host#
set security advance-policy-based-routing profile profile1 rule r1 then routing-instance TC1_VPNuser@host#
set security advance-policy-based-routing profile profile1 rule r1 sla-rule sla_rule1user@host#
set security advance-policy-based-routing sla-rule sla_rule1 multipath-rule mult1user@host#
set security advance-policy-based-routing multipath-rule mult1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule mult1 bandwidth-limit 90user@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:HTTPuser@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:SIP
허브 사이드 디바이스 기본 구성
user@host#
set security advance-policy-based-routing multipath-rule mult1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule mult1 bandwidth-limit 90user@host#
set security advance-policy-based-routing multipath-rule mult1 enable-reverse-winguser@host#
set security advance-policy-based-routing multipath-rule mult1 application junos:HTTPuser@host#
sset security advance-policy-based-routing multipath-rule mult1 application junos:SIP
링크 선호 구성
user@host#
set security advance-policy-based-routing multipath-rule mult1 link-preferences gr-0/0/0.0user@host#
set security advance-policy-based-routing multipath-rule mult1 link-preferences gr-0/0/0.1
링크 유형 기반 경로 선택 구성
user@host#
set security advance-policy-based-routing multipath-rule mult1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule mult1 link-type IP
애플리케이션 기반 multipath 라우팅 수준에서 인터페이스 기반 구성
user@host#
set security advance-policy-based-routing interface gr-0/0/0.0 link-tag IPuser@host#
set security advance-policy-based-routing interface gr-0/0/0.1 link-tag MPLS
애플리케이션 기반 multipath 라우팅을 위한 스포크 측 디바이스의 IPv6 터널 및 IPv4 트래픽이 포함된 IPsec VPN 구성
user@host#
set groups ipsec-groups security ike proposal salausehdotp1 authentication-method pre-shared-keysuser@host#
set groups ipsec-groups security ike proposal salausehdotp1 dh-group group5user@host#
set groups ipsec-groups security ike proposal salausehdotp1 encryption-algorithm aes-256-gcmuser@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 mode mainuser@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 proposals salausehdotp1user@host#
set groups ipsec-groups security ike policy salauspolitiikkap1 pre-shared-key ascii-text "$9$1-7ESeLxd2oGdbPQnCB1-VwYgJDi.TF/aZ"user@host#
set groups ipsec-groups security ike gateway gateway1 ike-policy salauspolitiikkap1user@host#
set groups ipsec-groups security ike gateway gateway1 version v2-onlyuser@host#
set groups ipsec-groups security ipsec proposal salausehdotp2 protocol espuser@host#
set groups ipsec-groups security ipsec proposal salausehdotp2 encryption-algorithm aes-256-gcmuser@host#
set groups ipsec-groups security ipsec policy salauspolitiikkap2 perfect-forward-secrecy keys group5user@host#
set groups ipsec-groups security ipsec policy salauspolitiikkap2 proposals salausehdotp2user@host#
set groups ipsec-groups security ipsec vpn vpn1 df-bit clearuser@host#
set groups ipsec-groups security ipsec vpn vpn1 ike ipsec-policy salauspolitiikkap2user@host#
set groups ipsec-groups security ipsec vpn vpn1 establish-tunnels immediatelyuser@host#
set system host-name SRX345-2user@host#
set system root-authentication encrypted-password "$ABC123"user@host#
set system services ssh root-login allowuser@host#
set services application-identificationuser@host#
set security apply-groups ipsec-groupsuser@host#
set security ike gateway SRX345-1-A address fdf:a::1user@host#
set security ike gateway SRX345-1-A external-interface ge-0/0/0.0user@host#
set security ike gateway SRX345-1-B address fdf:b::1user@host#
set security ike gateway SRX345-1-B external-interface ge-0/0/1.0user@host#
set security ipsec vpn SRX345-1-A bind-interface st0.0user@host#
set security ipsec vpn SRX345-1-A ike gateway SRX345-1-Auser@host#
set security ipsec vpn SRX345-1-B bind-interface st0.1user@host#
set security ipsec vpn SRX345-1-B ike gateway SRX345-1-Buser@host#
set security application-tracking first-updateuser@host#
set security application-tracking session-update-interval 1user@host#
set security forwarding-options family inet6 mode flow-baseduser@host#
set security forwarding-options family mpls mode flow-baseduser@host#
set security flow allow-dns-replyuser@host#
set security flow allow-embedded-icmpuser@host#
set security flow sync-icmp-sessionuser@host#
set security flow tcp-mss all-tcp mss 1300user@host#
set security flow tcp-mss ipsec-vpn mss 1350user@host#
set security flow tcp-session no-syn-checkuser@host#
set security flow tcp-session no-syn-check-in-tunneluser@host#
set security flow tcp-session no-sequence-checkuser@host#
set security policies default-policy permit-alluser@host#
set security zones security-zone Untrust host-inbound-traffic system-services alluser@host#
set security zones security-zone Untrust host-inbound-traffic protocols alluser@host#
set security zones security-zone Untrust interfaces ge-0/0/0.0user@host#
set security zones security-zone Untrust interfaces ge-0/0/1.0user@host#
set security zones security-zone Untrust application-trackinguser@host#
set security zones security-zone Untrust enable-reverse-rerouteuser@host#
set security zones security-zone trust host-inbound-traffic system-services alluser@host#
set security zones security-zone trust host-inbound-traffic protocols alluser@host#
set security zones security-zone trust interfaces ge-0/0/6.0user@host#
set security zones security-zone trust application-trackinguser@host#
set security zones security-zone trust advance-policy-based-routing-profile apbruser@host#
set security zones security-zone trust enable-reverse-rerouteuser@host#
set security zones security-zone VPN host-inbound-traffic system-services alluser@host#
set security zones security-zone VPN host-inbound-traffic protocols alluser@host#
set security zones security-zone VPN interfaces st0.0user@host#
set security zones security-zone VPN interfaces st0.1user@host#
set security zones security-zone VPN application-trackinguser@host#
set security zones security-zone VPN enable-reverse-rerouteuser@host#
set security zones security-zone test interfaces ge-0/0/7.0 host-inbound-traffic system-services alluser@host#
set security zones security-zone test interfaces ge-0/0/7.0 host-inbound-traffic protocols alluser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:ICMPuser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:SSHuser@host#
set security advance-policy-based-routing profile apbr rule r1 match dynamic-application junos:ICMP-ECHOuser@host#
set security advance-policy-based-routing profile apbr rule r1 then routing-instance apbruser@host#
set security advance-policy-based-routing profile apbr rule r1 then sla-rule sla1user@host#
set security advance-policy-based-routing sla-rule sla1 multipath-rule amr-rule1user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 number-of-paths 2user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 bandwidth-limit 30user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 enable-reverse-winguser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 max-time-to-wait 60user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:ICMPuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:SSHuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 application junos:ICMP-ECHOuser@host#
set security advance-policy-based-routing multipath-rule amr-rule1 link-preferences st0.0user@host#
set security advance-policy-based-routing multipath-rule amr-rule1 link-preferences st0.1user@host#
set interfaces ge-0/0/0 unit 0 family inet6 address fdf:a::2/64user@host#
set interfaces ge-0/0/1 unit 0 family inet6 address fdf:b::2/640user@host#
set interfaces ge-0/0/6 unit 0 family inet address 10.0.12.1/24user@host#
set interfaces ge-0/0/7 unit 0 family inet address 10.0.12.10/24user@host#
set interfaces fxp0 unit 0 family inet address 192.168.123.2/24user@host#
set interfaces st0 unit 0 family inet address 10.0.0.2/30user@host#
set interfaces st0 unit 1 family inet address 10.0.1.2/30user@host#
set policy-options policy-statement ecmp then load-balance per-packetuser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface st0.0 interface-type p2puser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface st0.1 interface-type p2puser@host#
set routing-instances IPSEC protocols ospf area 0.0.0.0 interface ge-0/0/6.0 passiveuser@host#
set routing-instances IPSEC interface ge-0/0/6.0user@host#
set routing-instances IPSEC interface st0.0user@host#
set routing-instances IPSEC interface st0.1user@host#
set routing-instances IPSEC instance-type virtual-routeruser@host#
set routing-instances IPSEC routing-options interface-routes rib-group inet apbr-groupuser@host#
set routing-instances apbr instance-type forwardinguser@host#
set routing-instances apbr routing-options static route 0.0.0.0/0 next-hop st0.0user@host#
set routing-instances apbr routing-options static route 0.0.0.0/0 next-hop st0.1user@host#
set routing-instances test interface ge-0/0/7.0user@host#
set routing-instances test instance-type virtual-routeruser@host#
set routing-instances test routing-options static route 0.0.0.0/0 next-hop 10.0.12.1user@host#
set routing-options rib-groups apbr-group import-rib IPSEC.inet.0user@host#
set routing-options rib-groups apbr-group import-rib apbr.inet.0user@host#
set routing-options forwarding-table export ecmp
GRE 터널의 경우 을(를) 으로 gre
대체 ipsec
합니다. IPv4 터널의 경우, IPv4 트래픽 및 IPv6 트래픽은 구성을 IPv4 및 IPv6로 적절히 대체합니다.
예: 애플리케이션 기반 Multipath 라우팅 구성
이 예는 지정된 SLA에 따라 애플리케이션 트래픽의 실시간 모니터링을 활성화하여 QoE(Quality of Experience)를 제공하도록 multipath 라우팅을 구성하는 방법을 보여줍니다.
요구 사항
-
Junos OS 릴리스 15.1X49-D160, 릴리스 19.2R1 이상 Junos OS 지원되는 SRX 시리즈 디바이스. 이 구성 예는 Junos OS 릴리스 15.1X49-D160에 대해 테스트됩니다.
-
보안 디바이스에 설치된 유효한 애플리케이션 식별 기능 라이선스.
-
디바이스를 통과할 수 있는 트래픽과 디바이스를 통과할 때 트래픽에서 수행해야 하는 작업 등 전송 트래픽에 대한 규칙을 적용하는 적절한 보안 정책.
-
영역에 대해 활성화된 애플리케이션 추적 지원을 활성화합니다. 애플리케이션 추적을 참조하십시오.
-
다음 기능이 구성되었는지 확인합니다.
개요
이러한 민감한 애플리케이션 트래픽의 무중단 전달을 보장하기 위해, 애플리케이션 기반 multipath 라우팅은 보안 디바이스에서 지원되어 전송 디바이스가 패킷 사본을 생성하고 두 개의 WAN 링크를 통해 각 사본을 목적지로 보낼 수 있도록 합니다.
다중 경로 라우팅은 SLA 구성을 기반으로 두 경로를 식별하고 애플리케이션 트래픽의 중복 사본을 생성하고 다른 물리적 경로에서 동시에 트래픽을 보냅니다. 수신 디바이스에서 패킷 사본이 진행 중인 동안 multipath 라우팅은 지터, RTT 및 패킷 손실 감소를 추정하고 트래픽을 최상의 링크로 라우팅하여 최종 사용자에게 SLA를 제공할 수 있도록 서비스 품질을 분석합니다. 이는 또한 지터, RTT 및 패킷 손실 감소에 대한 추정에 도움이 됩니다. 두 복사본이 모두 원격 엔드에서 수신되면 첫 번째 수신 패킷이 고려되고 후속 패킷을 삭제합니다.
표 1 은 이 예에서 사용되는 매개 변수의 세부 정보를 제공합니다.
매개 변수 |
옵션 |
값 |
---|---|---|
Multipath 규칙(multi1) |
경로 수 |
2 |
대역폭 제한 |
60 |
|
최대 대기 시간 |
60 |
|
링크 유형 |
MPLS, IP |
|
응용 프로그램 |
junos:YAHOO, junos:GOOGLE |
|
application-group |
junos:web |
|
SLA 규칙(sla1) |
관련 multipath 규칙 |
multi1 |
APBR 프로필(apbr1) |
애플리케이션 일치 |
junos:YAHOO |
APBR 규칙 |
rule1 |
|
SLA 규칙 |
sla1 |
|
언더레이 인터페이스 |
ge-0/0/2 및 ge-0/0/3
|
이 예에서 junos:YAHOO 및 junos:GOOGLE 애플리케이션 트래픽에 대한 multipath 규칙을 구성합니다. 그런 다음 SLA 규칙을 구성하고 multipath 규칙을 multipath 규칙과 연결합니다.
다음으로, Yahoo 애플리케이션용으로 생성된 APBR 규칙과 SLA 규칙을 연결합니다. APBR은 애플리케이션 세부 정보를 사용하여 APBR 프로필(애플리케이션 프로필)에서 일치하는 규칙을 찾습니다.
Multipath 규칙은 junos:YAHOO 또는 junos:GOOGLE과 일치하는 트래픽에 적용되며, 라우팅 인스턴스에 명시된 대로 및 다음 홉 주소로 전달됩니다.
다중 경로 라우팅은 SLA 규칙에 따라 패킷 복제가 필요한 언더레이 링크 유형과 해당 오버레이를 획득합니다. 애플리케이션 트래픽 및 구성된 대역폭 제한을 기반으로 multipath는 2개 이상의 경로를 식별하고 식별된 모든 경로에서 원본 트래픽의 사본을 트리거합니다.
트래픽이 수신 끝에 도달하면 수신 디바이스는 다른 링크를 통해 도착하는 세션의 패킷을 수락하고 다른 CoS 대기열에 도착하는 패킷의 시퀀스를 유지하고 중복 패킷을 삭제합니다.
전송 측 디바이스와 수신 측 디바이스 모두에서 구성이 동일한지 확인하여 디바이스가 발신자와 수신자 모두 역할을 할 수 있도록 합니다.
구성
- 애플리케이션 트래픽에 대한 Multipath 규칙 구성(트래픽 전송을 위해 구성된 디바이스)
- 애플리케이션 트래픽에 대한 Multipath 규칙 구성(트래픽 수신을 위해 구성된 디바이스))
애플리케이션 트래픽에 대한 Multipath 규칙 구성(트래픽 전송을 위해 구성된 디바이스)
단계별 절차
다양한 애플리케이션 트래픽에 대한 APBR 프로필을 구성하고 SLA 규칙 및 multipath 규칙을 연결합니다.
-
라우팅 인스턴스를 생성합니다.
user@host#
set routing-instances TC1_VPN instance-type vrfuser@host#
set routing-instances TC1_VPN route-distinguisher 10.150.0.1:101user@host#
set routing-instances TC1_VPN vrf-target target:100:101user@host#
set routing-instances TC1_VPN vrf-table-labeluser@host#
set routing-instances TC1_VPN routing-options static route 10.19.0.0/8 next-table Default_VPN.inet.0 -
하나 이상의 라우팅 테이블을 그룹화하여 RIB 그룹을 형성하고 라우팅 테이블로 경로를 가져옵니다.
user@host#
set routing-options rib-groups Default-VPN-to-TC1_VPN import-rib [ Default_VPN.inet.0 TC1_VPN.inet.0 ] -
AppQoE를 서비스로 구성합니다. 원하는 영역의 호스트 인바운드 트래픽에 대해 AppQoE를 서비스로 구성해야 합니다.
user@host#
set security zones security-zone untrust1 host-inbound-traffic system-services appqoe -
APBR 프로필을 생성하고 규칙을 정의합니다.
user@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:GOOGLEuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application junos:YAHOOuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 match dynamic-application-group junos:webuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 then routing-instance TC1_VPNuser@host#
set security advance-policy-based-routing profile apbr1 rule rule1 then sla-rule sla1 -
활성 프로브 매개 변수를 구성합니다.
user@host#
set security advance-policy-based-routing active-probe-params probe1 settings data-fill juniperuser@host#
set security advance-policy-based-routing active-probe-params probe1 settings data-size 100user@host#
set security advance-policy-based-routing active-probe-params probe1 settings probe-interval 30user@host#
set security advance-policy-based-routing active-probe-params probe1 settings probe-count 30user@host#
set security advance-policy-based-routing active-probe-params probe1 settings burst-size 1user@host#
set security advance-policy-based-routing active-probe-params probe1 settings sla-export-interval 60user@host#
set security advance-policy-based-routing active-probe-params probe1 settings dscp-code-points 000110 -
메트릭 프로필을 구성합니다.
user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold delay-round-trip 120000user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter 21000user@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold jitter-type egress-jitteruser@host#
set security advance-policy-based-routing metrics-profile metric1 sla-threshold packet-loss 2 -
언더레이 인터페이스를 구성합니다.
링크 유형이 언더레이 인터페이스 옵션에 따라 구성되지 않은 경우, 기본 link-type IP가 사용되고 1000Mbps의 기본 link-speed가 고려됩니다.
user@host#
set security advance-policy-based-routing underlay-interface ge-0/0/2 unit 0 link-type MPLSuser@host#
set security advance-policy-based-routing underlay-interface ge-0/0/2 unit 0 speed 800user@host#
set security advance-policy-based-routing underlay-interface ge-0/0/3 unit 0 link-type MPLSuser@host#
set security advance-policy-based-routing underlay-interface ge-0/0/3 unit 0 speed 500 -
오버레이 경로를 구성합니다.
user@host#
set security advance-policy-based-routing overlay-path overlay-path1 tunnel-path local ip-address 10.40.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path1 tunnel-path remote ip-address 10.40.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path1 probe-path local ip-address 10.40.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path1 probe-path remote ip-address 10.40.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path2 tunnel-path local ip-address 10.41.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path2 tunnel-path remote ip-address 10.41.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path2 probe-path local ip-address 10.41.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path2 probe-path remote ip-address 10.41.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path3 tunnel-path local ip-address 10.42.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path3 tunnel-path remote ip-address 10.42.1.1user@host#
set security advance-policy-based-routing overlay-path overlay-path3 probe-path local ip-address 10.42.1.2user@host#
set security advance-policy-based-routing overlay-path overlay-path3 probe-path remote ip-address 10.42.1.1 -
대상 경로 그룹을 구성합니다.
user@host#
set security advance-policy-based-routing destination-path-group site1 probe-routing-instance transituser@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path1user@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path2user@host#
set security advance-policy-based-routing destination-path-group site1 overlay-path overlay-path3 -
multipath 규칙을 구성합니다.
user@host#
set security advance-policy-based-routing multipath-rule multi1 bandwidth-limit 60user@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:YAHOOuser@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:GOOGLEuser@host#
set security advance-policy-based-routing multipath-rule multi1 application-group junos:webuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type IPuser@host#
set security advance-policy-based-routing multipath-rule multi1 max-time-to-wait 30user@host#
set security advance-policy-based-routing multipath-rule multi1 number-of-paths 2 -
SLA 규칙을 구성합니다.
user@host#
set security advance-policy-based-routing sla-rule sla1 switch-idle-time 40user@host#
set security advance-policy-based-routing sla-rule sla1 metrics-profile metric1user@host#
set security advance-policy-based-routing sla-rule sla1 active-probe-params probe1user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params sampling-percentage 25user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params violation-count 2user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params sampling-period 60000user@host#
set security advance-policy-based-routing sla-rule sla1 passive-probe-params type book-ended -
SLA 규칙을 multipath 규칙에 연결합니다.
user@host#
set security advance-policy-based-routing sla-rule sla1 multipath-rule multi1
애플리케이션 트래픽에 대한 Multipath 규칙 구성(트래픽 수신을 위해 구성된 디바이스))
단계별 절차
이 단계에서 구성된 변수는 송수신 디바이스 모두에 대해 동일합니다.
-
수신 디바이스에서 multipath 규칙을 구성합니다.
user@host#
set security advance-policy-based-routing multipath-rule multi1 bandwidth-limit 60user@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:YAHOOuser@host#
set security advance-policy-based-routing multipath-rule multi1 application junos:GOOGLEuser@host#
set security advance-policy-based-routing multipath-rule multi1 application-group junos:webuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type MPLSuser@host#
set security advance-policy-based-routing multipath-rule multi1 link-type IP
결과
구성 모드에서 명령을 입력하여 구성을 show
확인합니다. 출력에 의도한 구성이 표시되지 않으면 이 예의 구성 지침을 반복하여 수정합니다.
허브 사이드 디바이스 multipath 규칙 구성
[edit security]
user@host#
show advance-policy-based-routing multipath-rule multi1 multipath-rule multi1 { bandwidth-limit 60; application [ junos:YAHOO junos:GOOGLE ]; application-group junos:web; link-type [ MPLS IP ]; number-of-paths 2; }
[edit security]
user@host#
show advance-policy-based-routing profile apbr1 { rule rule1 { match { dynamic-application [ junos:GOOGLE, junos:YAHOO ]; dynamic-application-group [ junos:web ]; } then { routing-instance TC1_VPN; sla-rule { sla1; } } } } active-probe-params probe1 { settings { data-fill { juniper; } data-size { 100; } probe-interval { 30; } probe-count { 30; } burst-size { 1; } sla-export-interval { 60; } dscp-code-points { 000110; } } } metrics-profile metric1 { sla-threshold { delay-round-trip { 120000; } jitter { 21000; } jitter-type { egress-jitter; } packet-loss { 2; } } } underlay-interface ge-0/0/2 { unit 0 { link-type MPLS; speed 800; } } underlay-interface ge-0/0/3 { unit 0 { link-type MPLS; speed 500; } } overlay-path overlay-path1 { tunnel-path { local { ip-address { 10.40.1.2; } } remote { ip-address { 10.40.1.1; } } } probe-path { local { ip-address { 10.40.1.2; } } remote { ip-address { 10.40.1.1; } } } } overlay-path overlay-path2 { tunnel-path { local { ip-address { 10.41.1.2; } } remote { ip-address { 10.41.1.1; } } } probe-path { local { ip-address { 10.41.1.2; } } remote { ip-address { 10.41.1.1; } } } } overlay-path overlay-path3 { tunnel-path { local { ip-address { 10.42.1.2; } } remote { ip-address { 10.42.1.1; } } } probe-path { local { ip-address { 10.42.1.2; } } remote { ip-address { 10.42.1.1; } } } } destination-path-group site1 { probe-routing-instance { transit; } overlay-path overlay-path1; overlay-path overlay-path2; overlay-path overlay-path3; } sla-rule sla1 { switch-idle-time { 40; } metrics-profile { metric1; } active-probe-params { probe1; } passive-probe-params { sampling-percentage { 25; } violation-count { 2; } sampling-period { 60000; } type { book-ended; } } multipath-rule { multi1; } } multipath-rule multi1 { bandwidth-limit 60; application [ junos:YAHOO junos:GOOGLE ]; application-group junos:web; link-type [ MPLS IP ]; number-of-paths 2; }
디바이스 구성이 완료되면 구성 모드에서 을(를) 입력합니다 commit
.
확인
Multipath 규칙 상태 표시
목적
트래픽을 전송하도록 구성된 디바이스에 multipath 규칙의 세부 정보를 표시합니다.
작업
운영 모드에서 명령을 입력합니다 show security advance-policy-based-routing multipath rule
.
user@host>
show security advance-policy-based-routing multipath rule multi1
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured application groups junos:web
Configured applications junos:GOOGLE, junos:YAHOO
Path Group Information:
Total path groups : 1
Path-Group-Id State Avl-Num-Paths
1 Active 3
Receiver Information:
Path Groups Information:
Total receiver path groups : 1
Path-Group-Id : 1, Avg-Pkt-Loss(%) : 0, Avg-Ingress-Jitter(us) : 171
Path Information:
Dst-IP Pkts-Rcvd Pkt-Loss(%) Ingress-Jitter(us) Reduction-Pkt-Loss(%) Reduction-Ingress-Jitter(us)
10.40.1.2 2442 0 165 0 -6
10.41.1.2 2442 0 158 0 -13
Cos Q Statistics:
Total receiver cos queues: 8
COS-Q-Id Pkts-Rcvd Out-Of-Seq-Drop
0 4884 2442
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
의미
명령 출력에는 multipath 규칙 세부 정보가 표시됩니다.
애플리케이션에 대한 다중 경로 규칙 통계 표시
목적
트래픽 수신을 위해 구성된 디바이스의 애플리케이션 트래픽 세부 정보 표시
작업
운영 모드에서 명령을 입력합니다 show security advance-policy-based-routing multipath rule rule-name application application-name
.
user@host>
show security advance-policy-based-routing multipath rule multi1 application junos:YAHOO
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured applications junos:YAHOO
Sender Information:
Statistics:
Current Sessions 0
Ignored Sessions 1
Applications Matched 1
Applications Switched 0
Stopped due to Bandwidth Limit 0
Packets in path inactive state 0
Packets in path active state 627
Midstream Packets Ignored 0
Total Packets Processed 627
Total Packets Copied 627
의미
명령 출력은 애플리케이션에 대한 multipath 규칙을 표시합니다.
Multipath 규칙 정책 표시
목적
트래픽을 전송하도록 구성된 디바이스에 multipath 규칙의 세부 정보를 표시합니다.
작업
운영 모드에서 명령을 입력합니다 show security advance-policy-based-routing multipath rule
.
user@host>
show security advance-policy-based-routing multipath policy statistics application junos:YAHOO multipath-name multi1 profile apbr1 rule rule1 zone trust
Sender Information:
Statistics:
Current Sessions 0
Ignored Sessions 0
Applications Matched 1
Applications Switched 0
Stopped due to Bandwidth Limit 0
Packets in path inactive state 26
Packets in path active state 2416
Less than Configured Paths 0
Midstream Packets Ignored 0
Total Packets Processed 2442
Total Packets Copied 2442
의미
명령 출력은 multipath 규칙이 적용된 처리된 트래픽에 대한 세부 정보를 표시합니다.
Multipath 규칙 상태 표시
목적
트래픽 수신을 위해 구성된 디바이스에 multipath 규칙의 세부 정보 표시
작업
운영 모드에서 명령을 입력합니다 show security advance-policy-based-routing multipath rule
.
user@host>
show security advance-policy-based-routing multipath rule multi1
Multipath Rule Status:
Multipath Rule Information:
Multipath rule name multi1
Multipath rule type Packet-Copy
Multipath rule state Active
Configured number of paths 2
Configured application groups junos:web
Configured applications junos:GOOGLE, junos:YAHOO
Path Group Information:
Total path groups : 1
Path-Group-Id State Avl-Num-Paths
1 Active 3
Receiver Information:
Path Groups Information:
Total receiver path groups : 1
Path-Group-Id : 1, Avg-Pkt-Loss(%) : 0, Avg-Ingress-Jitter(us) : 171
Path Information:
Dst-IP Pkts-Rcvd Pkt-Loss(%) Ingress-Jitter(us) Reduction-Pkt-Loss(%) Reduction-Ingress-Jitter(us)
10.40.1.1 2442 0 165 0 -6
10.41.1.1 2442 0 158 0 -13
Cos Q Statistics:
Total receiver cos queues: 8
COS-Q-Id Pkts-Rcvd Out-Of-Seq-Drop
0 4884 2442
1 0 0
2 0 0
3 0 0
4 0 0
5 0 0
6 0 0
7 0 0
의미
출력은 multipath 규칙 관련 세부 정보를 표시합니다.