checksum field가 없다.
options가 있기는 한데 header 밖 payload에 집어넣는다.
ICMPv6를 사용한다.
IPv6로 언제 바뀌는가?
End Host에는 IPv6가 이미 구현되어있다. 문제는 네트워크 레이어 밑으로 내려가기 시작하면 라우터 전체에 이게 다 구현되어야 하는데 이걸 한방에 바꿀 수 없다.
IPv4만 다루는 라우터와 IPv6만 다루는 라우터가 있으면 tunneling을 한다. IPv6의 datagram이 IPv4의 payload로 들어가면 된다.
물리적으로는 아래와 같지만 논리적으로 위와같이 처리해주는 작업을 해준다.
먼저 v6로 보냈다가 그걸 v4로 encapsulation해준다. 중요한것은 src:B이고 dest:E이다.
generalized forwarding : 조금더 확장되어서 여러개의 포트로 포워딩하는등
각각의 라우터가 flow table을 가지고 있다. 이 flow table은 centralized routing controller가 계산한 flow table들을 소유
flow는 header field에 의해 identified 된다.
Pattern: packet header field에 있는 값들을 매칭
Actions: for matched packet : drop, forward, modify, matched packet or send matched packet to controller
Priority: disambiguate overlapping patterns
Counters: #bytes and #packets
등의 정보가 담기게 된다.
flow talbe이 match, action rule을 담고 있다.
위와같이 src와 dest의 값에 따라서 라우터에서 drop/forward/controller에게 보내기가 정해져 있다.
match+action 을 따라서 분류
위의 예시는 s3에서 s1을 거처서 s2에 도달해 h3, h4에 도착하는 사례이다.
10.2로 가는것들은 3번 포트로 보내라는 의미이다.
ingress port1로 들어오고
dst 10.4 이기에 3번 포트로 보내라고 적혀있다.
이렇게되면 SDN이