본문 바로가기

IT Tech/Network

[네트워크] OSPF의 SPF(Shortest Path First) 일반적인 동작 원리 SPF 기본 동작 원리 link-state 라우팅 프로토콜에서 토폴로지안의 각각의 라우터는 다른 모든 라우터에 대한 연결 상태에 대한 정보를 알고 있다. OSPF는 LSAs(Link-State Advertisements), IS-IS는 LSP( Link-State Packets)를 통해서 이러한 정보를 교환하고, IS-IS와 OSPF 모두 SPF알고리즘을 수행하게된다. 라우터가 네트워크의 모든 라우터 그리고 링크의 정보를 알게되면 그들 사이의 가장 빠른 경로를 계산하기 위해 바로 DijkstraShortest Path First 알고리즘 (Edsger W. Dijkstra)을 실행한다. 아래와 같은 네트워가 있다고 가정하고 라우터 A 에서의 SPF가 실행되고 라우팅 테이블이 생성되는 과정을 설명한다. 네..
[네트워크] MPLS TE(Traffic Engeering) Extenstion Opaque LSA for OSPFv2 Traffic Engineering Extensions ==> for RSVP TE Opaque LSA, Area-Local Scope (Type 10) - Scope에 따라 3가지 타입의 Opaque LSA가 있고, TE를 위해 Area flooding Scope의 Type 10을 사용한다. - 새로운 LSA가 정의됨 ==> MPLS Traffic Engineering LSA MPLS Traffic Engineering LSA Routers, Point-to-Point Links, Connections to MultiAccess Networks를 나타낼 수 있다. (Multi-Access Links를 위한 LSA는 Network LSA로 충분해서 추가 정의가 필요치 않음) Opaque LSA 는 Ext..
[네트워크] OSPF Router LSA Packet Format Link State ID for Router LSAs is the originating router's Router ID. V, or Virtual Link Endpoint bit, is set to one when the originating router is an endpoint of one or more fully adjacent virtual links having the described area as the transit area. E, or External bit, is set to one when the originating router is an ASBR. B, or Border bit, is set to one when the originating router is an ABR. Num..
[네트워크] OSPF DB Description 패킷 구조 Interface MTU is the size, in octets, of the largest IP packet that can be sent out the originator's interface without fragmentation. This field is set to 0x0000 when the packet is sent over virtual links. Options field is included in the Database Description packet so that a router may choose not to forward certain LSAs to a neighbor that doesn't support the necessary capabilities. The first fi..
[네트워크] OSPF Opaque LSA OSPF가 직접적으로 사용하거나 OSPF 도메인을 통해서 정보배포를 원하는 애플리케이션에 의해서 간접적으로 사용하기 위해 사용된다. standard LSA Header + 32b application-specific information Header - Opaque Type에 따라 application-specific 한 정보를 추가할 수 있다. - application-specific 한 정보를 교환할 수 있다. [Opaque LSA Type] Link Opaque (type-9): - Flooding Scope -> Link-Local - LSA를 수신한 Interface가 Neighbor의 target interface와 같지 않으면 discarding한다. Area Opaque(type-10) :..
[네트워크] VLAN Trunk 간단 개념 Trunk는 원래 전화국과 전화국을 연결하는 선로를 말하는 것으로서 국간의 모든 통신은 이 선로를 따라 전송된다. Switch에서도 마찬가지로 Trunk 포트를 통해 모든 VLAN의 Frame이 전송된다. Switch간 연결에 사용되는 Trunk 포트는 특정 VLAN에 속해서는 안된다. VLAN Trunk포트를 사용하는 이유는 Switch간 같은 VLAN에 해당하는 포트들을 모두 케이블로 연결하는 것은 매우 비효율적이기 때문이다. 따라서 보통 어느 VLAN에도 속하지않은 VLAN Trunk 포트를 설정하고 이 포트를 연결해서 사용을 한다. 스위치는 도착한 프레임의 IEEE 802,1q Tagging정보를 보고 어떤 VLAN에 속한 포트로 포워딩할지 결정할 수 있다. [참고] IEEE 802.1q 방식의 ..
[네트워크] IGMP SNOOPING Multicast Router 와 Host 사이에 위치한 스위치에서 IGMP 관련 패킷을 말 그대로 엿보는 기능이다. Why? 멀티캐스트 패킷을 모든 포트로 Flooding 하지말고 관심있어하는 클라이언트가 있는 포트에만 보내주기 위해서 이다. (나름대로 테이블 관리) 일단 대용량의 멀티캐스트 트래픽이 줄어들어 스위치와 클라이언트 입장에서 더 가벼운 네트워크를 유지할수 있다. To be Continued 기술적인 부분은 추후 업데이트.. by MindEater
[네트워크] TCP Fast Retransmisstion • Backgound TCP spec은 수신부가 순서에 어긋난 세그먼트가 수신하면 자신이 받기를 기대하는 세그먼트에 대한 ACK를 지체 없이 즉각 보내도록 하고 있는데, 이로 인해 송신부는 무엇을 재전송해야 하는가를 빨리 알 수 있다. 그런데, 특정 segment가 도착하지 않았음을 의미하는 ACK 세그먼트가 온다고 해서 반드시 그 세그먼트가 손실되었음을 의미하지는 않는다. (IP의 특성상 순서가 뒤바뀌어 도착될 수도 있으므로). 그러나, 같은 ACK 메시지가 중복되어 연속해서 3개(모두 4 개) 오면 이 것은 그 세그먼트가 손실되었다는 강력한 암시로 볼 수 있다. 또한, 특정 세그먼트가 도착하지 않았음을 의미하는 ACK가 중복해서 연속적으로 온다는 것은 망을 통해 데이터가 계속 흐르고 있음을 의미한다...
[네트워크] 서브넷팅, VLSM, CIDR(수퍼넷팅) 간단 설명... 서브넷팅(Subnetting) Host가 적은 하나의 공용 네트워크에 C 클래스 하나를 할당하면 여분의 IP를 사용할 수 있는 방법이 없었다. 그래서 호스트가 작은 소규모 망을 위해 네트워크를 쪼개서 활용하기 위해 기존에 고정된 서브넷 마스크 비트를 (C클래스의 경우 24을 25이상으로) 늘려서 서브넷을 증가시키는 방법이다. VLSM (Variable Length Subnet mask) 서브넷팅이 균일한 호스트를 가진 여러개의 서브넷으로 나눈다고 하면 VLSM은 서로 다른 크기의 호스트를 포함하는 서브넷을 IP Address의 낭비없이 사용할 수 있도록 가변의 Prefix들로 서브넷팅을 하는 방법이다. 한마디로 표현하자면 서브넷의 서브넷이다. 가변길이의 Prefix를 지원하는 라우팅 프로토콜로 RIP, ..
[네트워크] MPLS TE FRR(Fast Reroute) MPLS TE FRR(Fast Reroute) 장애발생시 트래픽을 신속히 우회시켜 패킷 유실을 최소화 시키는 것으로 Link, Node, Path Protection이 있다. Link Protection 장래를 감지하고 트래픽을 다른 링크로 전송시키는 백업터널의 시작점을 PLR(Point of local repair)이라고 하고, 백업터널이 끝나는 지점을 MP(Merge Point)라고 한다. Link Protection에서는 MP, 즉 인접 라우터를 NHop(Next Hop)이라고 한다. R1에 장애 Link Protection이 설정되면 미리 우회경로인 R1-R4-R2 구간에 대한 MPLS TE ERR용 라벨을 할당받고, 사용할 준비를 한다. 장애감지전에 백업 링크로가는 라벨값을 부여받았고, L2 인..
[네트워크] MPLS TE 간단 개요 MPLS TE(Traffic Engineering)은 로드 밸런싱 개념과 비슷하며 기본적으로 네트워크 활용도의 증가와 망 장애에 바른 대처에 특화된 기능이다. [참고] 라우터에 장애가 발생하면 IGP의 경우 수초에서 수십초가 걸리는 반면, MPLS TE의 기능중 FRR(Fast ReRoute) 기능을 사용하면 기본적으로 1초 이내에 대체경로가 동작한다. 관련 프로토콜과 연관성 MPLS TE에서는 OSPF나 IS-IS가 라우팅 테이블을 만들고, CSPF(Constrained SPF)가 MPLS TE용 경로를 계산, RSVP가 경로를 설정, 유지 및 해제를 담당한다. RSVP 대신 LDP가 사용될 수도 있다. OSPF는 Type 10 Opaque LSA, IS-IS는 확장 TLV를 이용하여 MPLS TE에 ..
[네트워크] BGP 정리 노트 #3 - BGP의 연결 BGP는 크게 다른 AS 사이에 맺어지는 EBGP(Exterior BGP)와 AS 내부 라우터 사이에 IBGP(Interior BGP)의 연결을 지원합니다. BGP로 연결된 상대편 라우터를 Peer(Neighbor)라고 부르며 이러한 연결과정을 Peering 이라고 한다. 1. EBGP - EBGP는 일반적으로 다른 AS의 경계(Border) 라우터와의 BGP 연결로서 1:1로 직접 연결된다. 하지만, 경우에 따라서는 몇 단계(Hop)를 거쳐 맺어지기도 한다. - Default Hop : 1 1:1이 아닌 몇 단계를 거쳐야 하는 경우나 인터페이스의 주소가 아닌 Loopback 주소로 연결을 하고자 하는 경우는 Hop 수를 증가 시켜주어야 한다. 2. IBGP - AS 외부의 정보를 AS 내부의 라우터들도..
[네트워크] BGP 정리 노트 #2 - BGP의 사용 1. BGP를 사용하지 말아야 하는 경우 BGP는 정책을 적용할 수 있는 라우팅 프로토콜입니다. ==> 정책을 적용할 필요가 없을 경우에는 사용하지 않는 것이 좋다!! 외 부 AS와의 연결이 하나 뿐일 때는 정책을 적용할 여지가 전여 없이 AS간의 통신 트래픽은 언제나 하나의 경로만을 타고 나가기 때문입니다. 이 때에는 BGP보다는 Default Route를 사용하는 것이 좋다고 강력이 주장하고 있습니다. 두 번째로 BGP와 관련된 정책 설정 기능에 대해서 잘 모를때는 사용하지 않는 것이 좋습니다. ^^;;;; 마 지막으로 BGP를 운영하기 위한 기반환경이 구성되어 있지 않다면 BGP 사용을 잠시 보류하는 것이 좋습니다. AS 라우터가 BGP 정보를 Full로 받는다면 Table의 크기는 생각하는 것 이..
[네트워크] BGP 정리 노트 #1 - BGP의 특징 1. Policy Routing BGP(Border Gateway Protocol)는 정책(Policy)을 적용할 수 있는 라우팅 프로토콜입니다. [새창에서 보기] 2011년 현재 IANA로부터 배정받은 AS(Autonomus System)의 수는 916개입니다. AS와 ISP의 수가 증가하면서 이들간의 네트워크 구성도 위에서 보는 것과 같이 점점 복잡해지고 있습니다. 이와 같은 상황에서 각 AS의 라우팅 관련 요구 사항은 서로 다를 것입니다. 예를 들어 어떤 AS의 정보는 받되 다른 AS의 정보는 받지 않는다든지 등등... IGP는 AS 내부에서 네트워크의 안정적인 라우팅을 위해 여러가지 정보를 수집하고 최적의 라우팅 테이블을 구성한다면, EGP(Exterior Gateway Protocol)에 속하는..
[네트워크] IS-IS 정리 노트 #8 - Metric IS-IS의 Default Metric은 Level 1과 Level 2에 관계없이 동일하게 10이 설정되며 OSPF 같이 회선의 속도(Reference Bandwidth)에 따라 Cost를 자동으로 계산하지 않고 Default로 10이 적용됩니다. 1. IS-IS Default Metric IS-IS에서 Metric 정보가 포함되어 전달되는 TLV로는 다음과 같은 것들이 있다. Type 128 - IP Internal Reachability Information TLV Type 130 - IP External Reachability Information TLV Type 2 - IS Neighbor TLV Type 3 - ES Neighbor TLV Type 5 - Prefix Neighbor TLV [M..
[네트워크] IS-IS 정리 노트 #7 - TLV TLV란 Type(or Code), Length, Value의 첫 약자를 조합해 만든 용어. IS-IS가 원래부터 지원하는 TLV(ISO 10589)와 확장된 TLV (RFC 1195)의 Type Number는 서로 다르다. 1. IIH TLV Type 1 - Area Address TLV 라우터가 속해 있는 Area의 정보가 들어 있다. 상대편 라우터와 같은 Area에 있다면 Default로 Level 1과 Level 2 Adjacency를 맺지만, 다른 Area에 속해 있다면 Level 2 Adjacency 관계만 맺는다. Type 5 - IS Neighbors TLV (★★★) 상대편 라우터로부터 오는 IIH의 IS Neighbors TLV속에 자신의 System ID를 발견하게 되면 자신이 보낸 ..
[네트워크] IS-IS 정리 노트 #6 - SNP Packet Format SNP (Sequence Number Packet) 라우터들이 자신들의 LSDB를 최신의 것으로 유지하고 동기화 하기 위해 사용하며, CSNP(Complete Sequence Nuber Packet)과 PSNP(Partial Sequence Number Packet) 두가지 타입이 있다. PSNP는 부분적인 요약본을 저장하고 있고 CSNP는 전체 LSDB의 요약본을 저장하고 있다. Source ID DIS의 System ID, Point-to-Point 구간인 경우 상대편 라우터의 System Start LSP ID TLV에 저장되어 있는 LSP중 첫 번째 LSP ID System ID(6B) + Pseudonode ID(1B) + LSP Fragment Number(1B) End LSP ID LSP E..
[네트워크] IS-IS 정리 노트 #5 - LSP Packet Format LSP (Link-State Packet) Format IS-IS의 LSP는 Level에 따라 각각 독립적으로 운영이 된다. 라우터는 같은 Area내의 라우터 정보는 Level-1의 LSDB에 저장을 하고 다른 Area에 있는 라우터의 정보는 Level-2 LSDB에 저장한다. PDU Length (2 bytes) 전체 PDU의 길이 Remaining Lifetime (2 bytes) LSP가 만료되기까지의 시간. 이 시간이 지난 LSP는 LSDB에서 삭제한다. Default 1200초(20분)이고 최대 65,535초까지 설정가능하다, 너무 길게 설정하면 그만큼 잘못된 정보를 유지할 수 있고 너무 짧게 설정하면 LSP를 계속해서 새롭게 만들어야 하므로 시스템 리소스를 많이 사용하게 된다. 관련 명령어) ..
[네트워크] IS-IS 정리 노트 #4 - IIH Packet Format IIH (IS to IS Hello) Packet IIS는 이웃한 라우터간에 Adjacency를 맺기 위해 사용되다가 Adjacency가 맺어진 후에는 Keepalive 용도로 사용된다. Point-to-Point 과 Broadcast Multi-Access 네트워크에서 사용되는 패킷의 구조가 조금 틀린데 위 그림의 오른쪽이 Point-to-Point 네트워크에서 쓰이는 Hello 패킷의 포맷이다. Circuit Type(3 bits) L1-L2, L1, L2 Source ID (6 bytes or...) Header의 ID length가 0 일경우 이 필드는 6B가 된다. 이 필드의 크기가 다른 두 라우터는 Adjacency를 맺지 못한다. Holding Time (2 bytes) 이웃을 맺은 후에 K..
[네트워크] IS-IS 정리 노트 #3 - Common Packet Format IS-IS의 공통 Header (8 byte) IRPD(Intradomain Routing Protocol Discriminator) IS-IS에 부여된 NLPID(Network Layer Protocol ID)로서 0x83이란 숫자가 배정됨. (ISO 9677) Length Indicator Header의 길이 Version/Protocol ID Extension 일반적으로 1이란 값을 갖고 있다. ID Length 발신자의 Source ID (System ID) 길이를 나태냄, Cisco의 경우 이 필드는 '0'이며 기본적으로 6B를 사용한다는 것을 의미함. --> 애매하지만 0이면 6B의 System ID를 갖는다고 이해하고 넘어감. PDU Type Version 현재 Version은 1 Maxim..