Network - Lab 10

Q: In the 7 layer model, what are some security ‘opportunities’ at each layer?

A:

  • Physical: Tapping (도청)
  • Link: break in and listen/interfere 와이파이, 이더넷
  • Network: break in and listen/interfere 라우터, 게이트웨이, 모뎀, 방화벽
  • Transport: see/modify 어플리케이션 대화
  • Applications: for access to content or to interfere

Q: The idea behind encryption is mainly seen as providing confidentiality. Why do we have both SSL/TLS and IPSec, if they do pretty much the same thing?

A:

  • SSL/TLS 와 IPSec 은 서로 다른 계층에서 실행된다 (트랜스포트, 네트워크) 따라서 다른 특징을 지님
  • TLS는 어플리케이션의 기밀성을 책임지지만, 여전히 출발지, 목적지, 포트 등의 정보를 드러낸다
  • IPSec 의 경우 본래 패킷에 대한 모든것을 숨기며, 터널을 제공함으로써 src / dest 에 대한 정보를 숨김
    • 또한 IPSec의 경우 어플리케이션 계층을 커버하는 반면, TLS는 오직 어플리케이션만을 책임짐

Q: What does it mean to have ‘confidentiality’, ‘authenticity’ and ‘integrity’ of packets traversing the network? What about ‘freshness’?

A:

  • Confidentiality: 아무도 듣지 못함
  • Authentication: 상대방이 주장하는 신원이 확실하다고 믿음 (즉 본인확인)
  • Integrity: 패킷이 중간에 변질되지 않았음
  • Freshness: 패킷이 새로운것이며, 재사용되지 않음

Q: Why does TOR (onion routing) use 3 routers for passing traffic through?

A: 아무도 한번에 어디서 어디로 향하는지 알게 하지 못하게 src & dest. 이로 인해 그 누구도 양 종단에 대한 정보를 알지 못함.

  • Guard: Knows src
  • Middle: Knows nothing
  • Exit: Knows dest

Q: Why would a worker on the road use a ‘mixed-mode’ VPN connection to their office? What’s the benefit, compared to say a ‘transport-mode’ VPN?

A:

  • Mixed-mode 란 호스트와 라우터 같이 다른 기기가 연결된 모드를 말한다
  • 이로 인해 이 호스트는 라우터에 속한 다른 기기들에게 마치 같은 LAN에 속한 기기처럼 보여질것
  • Transport Mode 는 호스트와 호스트를 직접적으로 바로 연결한다.
  • 차이점은, 만약 해당 대화가 (communication) 이 point to point 형식이라면 Transport 모드를, 여러명과 대화해야 한다면 mixed-mode 가 더 적절하다.

Q: How does ingress filtering prevent (most) spoofing?

A:

  • 라우터의 경우 해당 패킷이 어디서 온건지 알 수 있다.
  • 예를 들어, 어느 패킷이 항상 어느 네트워크에서 오는지 알고 있다면, 다른 곳에서 오는 (특이하게도) 패킷의 경우 필터링이 가능한것.
  • 이전과 다르게 다른 네트워크에서 온 패킷을 마치 spoofing 처럼 고려해서 그냥 드롭해버림.

Network - Lab 9

Q: What are some the network feedback sources that help tell you when things are going badly somewhere on the network? 네트워크상에 안좋은 일이 일어나는지 어떻게 알 수 있나?

안 좋은일: 혼잡…?

A:

  • ICMP: 다양한 이유로 안 좋다는 사실만 알 수 있음; MTU가 너무 낮을수도, 높을수도 등등
    • IP 의 경우 신뢰성이 없으며 비연결 지향적이기에, 이를 보조하기 위해 ICMP 가 등장
  • ECN: 라우터가 혼잡이 생겼음을 알려줌, back off 해야 할지 알려주는 기준임
  • TCP Feedback (flow control) such as ACK Clock, SACK info, Jitter+latencry
    • ACK clock - ACK 가 오는 속도가 줄어드니까 알수 있음
    • SACK - 놓친 패킷에 대해 ACK 가 반복되니까 손실이 발생한지 알수 있음
    • Jitter + latency - 패킷 별로 도착하는 시간이 (variation) 다르니까 알 수 있음

Q: Why can’t we use all that feedback to measure what is going everywhere?

A:

  • 왜냐하면 각각의 피드백은 그 path에 관한 내용인데, 이 경로가 고정된것도 아니고, 우리가 어떻게 조절할 수 있는것도 아님.
  • TCP feedback 들 또한 전체 경로중 혼잡이 발생한거지, 특정 경로, 위치에 대한 내용을 포함하고 있지 않음
  • 결론: 정확한 위치에 대한 피드백을 받는것도 아니며, 그 위치를 알아도 고칠수 있는 방법이 없음

Q: What problems does SNMP solve?

A:

  • 내 경로에 속하지 않은, 혹은 내 어플리케이션과 대화 하지 않는 네트워크 요소 (기기) 에 대한 상태를 확인 할 수 있게 해줌
  • Provides data that is standardised and that you can aggregate
    • 이는 혼잡, 에러, 다른 문제들을 detect 할 수 있게 해준다. 특히 어느 기기가 문제를 일으키는지 모든 경로를 탐색하지 않아도 바로 알수 있음 (왜냐면 해당 기기의 상태를 확인만 하면 되니까)
  • IP 를 통해서는 알 수 없는 기기의 상태 (온 오프), 혹은 이벤트 발생등을 알 수 있다
  • 물론 이를 가능케 하기 위해, 해당 네트워크 요소가 SNMP agent (or server) 기능을 가져야 한다
  • 최근까지 보안도 안 좋았음.

Q: Why doesn’t it solve all those problems across the width of the Internet?

A: 내부 인터넷에 대한 정보를 알려주기 싫으니까. 덕분에 내가 권한이 있는 네트워크에 대해서만 사용 가능하다.


Q: Why do we want views over time and space?

A:

  • Views over Time (기간동안 살펴보는거) - 패턴
    • 시간적으로 지켜봐야, 이 behaviour 가 정상인지 비정상인지, 혹은 우리가 보고 있지 않을때 일어났는지 알 수 있게 해줌.
    • 혼잡이 짧은 시간동안 버스트 형태로 일어난건지, 아니면 해당 시간에 단순히 유저가 너무 많아서 expand 가 필요한건지 알려줌
    • 즉 시간적으로 지켜봐야, 해당 행동의 정상 유무와 이를 해결하기 위한 방법을 알 수 있음
  • Views over Space (순간 순간 공간 (상황) 을 지켜보는거)
    • 현 네트워크 상황의 스냅샷을 제공해주며, 이로 인해 우리가 지금 해결해야 하는 문제가 있는지 알려줌
    • 예를 들어 어느 링크가 다운되었다 는 공간적 입장에서 현 상황이므로 해결되어야 함.

Q: Why does an SNMP trap get sent, and by whom?

A:

  • agent 가 manager 에게 보내는데, 이는 어떤 중요한 이벤트가 발생 했다는것을 알리는 알림이다
  • 매니저로부터 요청받는 보통의 쿼리/응답 메세지가 아닌 6개 이벤트 (링크 다운업 등등) 이거나 제조사가 정의해 놓은 이벤트가 발생한것.

Q: What’s the point of a MIB?

A:

  • MIB 는 데이터베이스의 구조로, 다른 MIB 와 합쳐 질 수 있음 (나무 형식). 이로 SNMP agent 가 가지고 있는 데이터에 대해 모든 object는 unique 한 이름을 가질수 있다
  • MIB는 각각의 필드, 구조, 성격, 관계들을 정의 하며, 사람들이 읽을수 있는 설명도 포함하고 있음

Q: What is a ‘GetNext’ used for?

A:

Lexicographical order of OID Tree - 곱집합에 위지하는 부분 순서

즉 밑의 사진의 경우 Interface 와 ipAddress 사이의 숫자 부분을 말함.

  • Get 요청은 SNMP에서 굉장히 구체적인 명령어로, MIB 에 존재하고 있음을 알아야 함
  • 따라서 Get으로 비슷한 관련 데이터를 읽기 위해서는 모두 각각의 위치를 알고 있어야 함 (행열 모두).
  • The SNMP GETNEXT operation is similar to the SNMP GET operation. The GETNEXT operation retrieves the value of the next OID in the tree. The GETNEXT operation is particularly useful for retrieving the table data and also for variables that cannot be specifically named. It is used for traversing the MIB tree.

Network - Lab 8

Q: On congestion, where does that actually happen on a network path?

A: 어느 특정 아웃바운드 연결/경료에 대해 너무 많은 트래픽이 올시에 라우터의 버퍼에서 발생함

  • 특정 아웃바운드 연결/경로가 중요하다. 각각의 연결/경로는 다른 버퍼를 가질수 있으니까.
  • 라우터 버퍼가 가득참 → 패킷이 드롭됨 → 손실 발생
  • 라우터 버퍼가 거의 가득참 → 패킷이 보내지는데 시간 걸림 → 지연 발생

Q: What’s the difference between ‘throughput’ and ‘goodput’?

A:

  • throughput은 통과하는 데이터의 볼륨 (크기)를 말한다 (그게 무슨 데이터간에).
  • Goodput은 통과하는 “새로운” 데이터의 볼륨을 칭한다 (이게 어플리케이션에서 말하는 “effective transmission rate” 과 관계되어 있음). 즉 재전송이 아닌 새로운 데이터의 볼륨.

Q: Why do we get a collapse in goodput as we approach congestion?

A: 혼잡해질수록 새로운 데이터가 통과하는 볼륨은 줄어들고 대신 retransmission 과 이에 대한 requests만 늘어날테니까.


Q: Why does TCP traffic (often) have a sawtooth pattern?

A: 네트워크를 정찰 (probe) 하면서 혼잡을 일으키지 않을떄 까지 점점 증가하다가, 혼잡이 발생하자마자 바로 줄여버리니까

  • Additive Increase, Multiplicative Decrease (AIMD)

Q: How can we detect congestion? (3 ways, at least)

A:

  • 패킷 손실 증가: 명확하게 혼잡 감지, 대신 혼잡이 생긴후에 감지
  • 패킷 지연 증가: 혼잡이 생김을 예상 (추론), 혼잡을 미리 감지함
  • ECN: 혼잡을 감지 (라우터가 알랴줌), 대신 라우터와 호스트간에 협조 필요
    • IP header에 플래그를 설정한다.

Q: How does Selective Acknowledgement (SACK) greatly help TCP performance?

A:

  • 송신자에게 수신가자 무엇을 받았는지 정확하게 알려줌으로써 놓친 부분만 다시 보내게 되니 보내는 양이 줄어들고 성능에 도움이됨

Q: What’s the difference between ‘fairness’ and ‘efficiency’ in networking terms?

A: 공평성은 네트워크 접근에 공평하게 (비슷한 송신율) 처리되는지. 효율성은 전체적인 네트워크를 보면서 가능한 최대한 성능을 끌어 올리고 있는지


Q: TCP has (at least) 3 types of “windows” for managing the transmission of segments (over
packets). Explain their key roles: SendWindow, ReceiveWindow, and CongestionWindow

A:

  1. SendWindow: 네트워크 효율성을 최대한 높이기 위해서
  2. RecvWindow: 송수신자 간의 성능 밸런싱을 위해서 (수신자가 송신자보다 빠르면 문제가 발생함)
  3. CongestionWindow: 송수신자간의 네트워크의 capacity 를 (거의 즉각적으로) 계산해서 흐름간의 공평성을 보장함. 혼잡 윈도우는 그냥 전송가능한 버퍼크기라고 생각하면 되는데 송신자는 최대 자신의 혼잡윈도우 크기만큼 트래픽을 전송가능하다. 이 혼잡윈도우는 네트워크의 혼잡도에 따라 커지기도하고 작아지기도 한다.

Network - Lab 7

Q: Can you explain the difference between unicast routing, broadcast routing and multicast routing? i.e. what are they trying to achieve?

A:

  • Unicast: 호스트간의 전달을 기반으로 다른 호스트에 부하는 주지 않는다. 다만 동일한 정보를 많은 호스트에게 전달할시에는 비효율적임
  • Broadcast: 단일 호스트가 세그먼트의 모든 호스트를 대상으로 전달. 여기서 세그먼트는 브로드캐스트 도메인, 즉 자신의 네트워크를 지칭함
  • Multicast: 흥미 있는 구독자와 그룹멤버들에게 예약된 주소를 통해 수신 (즉 유니캐스트 같은 브로드캐스트) 224/8

Q: Why does routing tackle fixed parameters about links, and ignore dynamic things like
congestion and load?

A: 라우팅 알고리즘은 각각의 모든 라우터들이 포워딩 테이블을 만드는데 사용된다 (시간과 에너지) 이러한 알고리즘들은 congestion/load 와 같은 변화들에 빠르게 반응하지 못하며, 할 생각도 없다.

  • 라우팅 알고리즘에서 가장 중요한것은, 해당 링크의 존재 유무 (크게는 위상)와 비용이다.
  • 혼잡과 로드는 알고리즘의 부가적인 요소에 불과함 (먼저 라우팅 테이블이 있어야 혼잡이던 뭐던 해결책을 제시할수 있으니까)

Q: What is a sink tree, and how does it differ from a source tree?

A:

  • sink tree = soure tree일때는 양 방향의 비용이 같을때이다. 즉 A부터 B가 3, B 부터 A가 2라면 싱크 트리와 소스트리는 다르다.
  • 싱크트리: A에 대한 shortest paths의 조합 (모든 노드로부터) 즉 A로 싱크
  • 소스트리: A로 부터 shortest paths의 조합 (모든 노드에 대해) 즉 A가 소스

Q: Can you explain the path optimality property?

A: 어느 최단 경로의 부분 경로는 그 부분 경로간의 최단경로임


Q: What’s the downside of using Dijkstra’s algorithm? Why is Distance-Vector (Bellman-
Ford) better?

A:

  • 다익스트라의 경우 전체 위상을 미리 알아야 하고, 모든 노드들을 알아야 함
  • DV는 음의 가중치일때도 사용 가능하며, 위상을 몰라도 되지만 시간 복잡도가 더 높음
    • Distributed algorithm
  • Likn-satet: 링크 스테이트 라우터를 이용하여 서로 네트워크 위상을 배울수 있도록 메세지를 교환함.

Q: What’s the benefit of regional route aggregation? What’s the downside?

A:

  • 장점은 네트워크의 포워딩/라우팅 테이블이 유의미하게 짧아지고 라우터들의 테이블 업데이트 유지에 관한 processing load를 줄여줌. (테이블이 짧으니 유지보수 할것도 적지)
  • 단점은 해당 경로가 최단 경로가 아닐수 있음

Q: Why do we use different routing algorithms internally versus globally?

A:

  • 내부적으로 (지역) 정확한 지식을 가지고, 짧은 네트워크 반경을 가짐. 따라서 DV나 다익스트라, link-state 모두 가능하고 (다양한 라우팅 알고리즘 가능), reasonable 한 시간내에 완료 가능함.
  • 외부 네트워크에 대해서 불완전한 지식을 가지고 있기에, 그냥 바깥 지역으로 던지고 걔네가 알아서 해결하게 두는게 편함.

Q: What is the difference between a transit and a peering arrangement?

A: transit: 나를 통해 다른 네트워크 갈 수 있음 (유료). Peering: 내 네트워크 내의 기기에 접근 할 수 있음 (대부분 공짜).

Network - Lab 6

Q_1: What causes the ‘latency’ on the left?

A_1: sender/receiver transmission 딜레이로 피할수 없는 딜레이 이다.

Q_2: What causes the long tail at the far right?

A_2: 도착하기 까지 여러 구간에서 다양한 이유로 멈춰진 패킷들의 도착

Q_3: What would cause jitter to become very large?

A_3: 지터는 다양한 넓이의/종류의 딜레이를 나타낸다. 아마도 이와 같은 경우는 중간에 경로가 다양하게 바뀌었거나, 해당 경로의 라우터들의 load가 갑자기 바빠지거나 한듯하다


Q: Why is packet 4 not able to be played out, since it was received? How could we fix that? What problem does that cause?

A: 수신 버퍼의 길이가 패킷 4를 수신하기에 너무 짧았음. 이를 고치기 위해 버퍼의 길이를 더 늘릴수 있지만, 그렇게 하면 송신과 플레이 시간의 지연이 더 커질것임. 따라서 실시간이라 부르기 애매해진다 (내가 말하고 몇초뒤에 상대방이 답한다던가 하는것).


Q: Why is retransmission (except in multicast) generally a bad idea? Why is it ok in multicast?

A: 잃어버린 패킷을 감지하고, 재요청하고 (그 잃어버린 패킷을 아직 가지고 있길 희망하면서), 패킷을 받는과정이 너무 오래걸리기 때문. 물론 재요청해서 바로 받는다는 보장도 없다. 멀티캐스트에서는 retransmission 해주는 위치가 가까울수 있어서 지연이 줄어들기 떄문.


Q: Why are the performance problems reduced in streaming applications?

A: 문제는 여전히 존재하나, 이는 단방향 트래픽이기 때문에 딜레이를 알아차리지 못한다 (화상 통화가 아닌 트위치 같은거 말하는거). 이 뜻은 내가 받은 버퍼의 크기를 키워서 안정적인 (reliable) 프토토콜을 사용 가능하다는것. → 내가 트위치 볼때 안끊기기만 하면 되니까 이에 맞춰 버퍼만 키우면됨


Q: What are the main network and device issues for IoT? Why is it different to other devices connecting to the internet?

A: Scale, Power, Network, Timeliness, Reliability → 해당 자료 읽어볼것.


Q: As an application model, how is PubSub different to Client/Server? Why is it better suited to large-scale IoT applications?

A: 클라이언트와 서버는 1:1 관계를 가진다 반면에 PubSub은 데이터 진원지 (소스)와 publishing 하는것이 나뉘어져 있기 때문에 서버/브로커를 통해 구독자들이 정보를 얻을수 있다. 또한 확장성과 관련해서 n 개의 생산자와 m의 소비자들이 있다면, n*m 대신 n+m의 직접적인 관계를 유지 할 수 있다 (중간에 브로커 하나). 또한 이러한 관계는 오직 해당 토픽에 관심있는 구독자들에게만 정보를 push 하기 때문에 reducing load for producers and brokers.


Q: Why are MQTT packets so compact and simple? (compared to HTTP say)

A: 성능과 부하를 위해서 이다. 짧은 메세지는 대역폭을 거의 소모하지 않고 간단함은 패킷 구성에 관한 CPU 소모량을 줄일수 있다.


Q: Why does MQTT offer multiple levels of QoS (quality of service)? Why is there separate, potentially different, QoS on both sides of the broker (producer->broker, broker->consumer)?

A: 상황에 따라 해당 메세지가 반드시 ensure 해야 할지, 혹은 가끔 업데이트로 충분한지, 혹은 메세지를 놓치더라도 다음까지 기다릴수 있는지 등 요구조건이 다르기 때문이다. 해당 소비자가 그 정보에 대한 중요도가 다르기 때문에, 중요하게 여기는 소비자는 높은 QoS를 이용할것이고 아니면 낮은 레벨을 사용할 것이다. 이로 인하여 데이터 소모량에 대한 유연성을 가질수 있다 (QoS 레벨에 따라 데이터 필요량이 다르니까 - 커뮤니케이션 횟수가 다름)

  • QoS 0 을 선호하는 사람들은 굳이 복잡한 QoS 2 안 써도 되니까.

Q: In what circumstances is it useful for a server to ‘retain’ an MQTT-published message?

A: 소스가 가끔 메세지를 주던지, 소비자가 언제던지 들어올수 있던지, 혹은 비안정적으로 연결되어 있던지 할때 좋음. 서버에 리테인 함으로써 위와 같은 상황에 현재 which state (메세지) 가 있는지 빠르게 배울수 있음. 즉 서버가 정보를 가지고 있으면 소비자가 재부팅하고 (그 사이에 정보를 못받았던, 정보가 초기화 되서 아무것도 모른다던지) 다시 들어와도 빠르게 “응 지금 메세지 이 상태임” 하고 알려줄수 있는거.

Network - Lab 5

Q: What is the ‘root’ of the Domain Name System? i.e. what is at the very top?

A: “,” is the root of the DNS. It is to refer the root DNS server


Let’s look at some Fully Qualified Domain Names (FQDN) with different Top Level Domains (TLD). Consider: www.anu.edu.au. and www.gov.au

Q: Which part is the ‘genericTLD’ (gTLD)?

A: Edu, gov.


Q: Which part is the ‘countrycodeTLD’ (ccTLD)?

A: au 다만 미국의 경우 us 를 사용하지 않음.


Q: Which part is the hostname?

A: www 가 이에 해당한다. DNS에서 해당 주소 (www.anu.edu.au) 의 A가 이 호스트 주소에 해당된다.

호스트 네임은 종단 기기에 지정된 이름 (DNS를 통해 식별)

도메인 네임은 네트워크에 지정된 이름 (네트워크에 연결되야함)


Q: In the case of cbs.anu.edu.au is the ‘cbs’ a hostname or a domain name, or both? How can you tell the difference? What’s the benefit/downsides of this approach?

A:

  • 모두 가능하다. (host and domain)
  • www.cbs.anu.edu.au 혹은 mail.cbs.anu.edu.au 와 같은 호스트네임을 가질수도 있다 (www, mail)
  • 아니면 cbs.anu.edu.au 라는 cbs 호스트 네임을 anu.edu.au 라는 도메인에 가질수 있을수도 있음
  • 어차피 DNS를 통해 확인후 전달 하기 때문에 길다면 줄일 수도 있는거. 대신 커넥션을 만들기전에 확인해야 한다.

만약 종단의 이름이 a 이고 도메인이 x 라면

해당 종단에 대한 주소는 a.x 가 되는 형식



Q: In HTTP, how does the application handle the ‘session’ and ‘presentation’ layers?

A: 세션은 쿠키로 관리된다. 또한 URL-Referenced tokens 들로 관리 되기도 하는데 이때는 쿼리 필드의 어느 부분을 공유하는 식을 이용한다.

  • 세션 기반의 문제점은 이 기록을 서버에 저장을 해야 하는데, 이로 인해 확장성이 좋지 않음
    • 세션을 유지 할 수 록 더 많은 트래픽을 감당하기 위해 프로세서, 서버등을 추가해야함
    • 이 과정이 매우 복잡하다
  • 토큰의 경우 상태 유지를 하지 않아 (stateless) 고로 확장성이 좋다
    • 클라이언트 쪽에서 정보를 저장하기 때문에 서버 확장에 용이하다.
    • 또한 클라이언트가 서버에게 쿠키를 전달하지 않음으로 쿠키로 인한 보안 취약점이 사라짐 (대신 토큰 보안 취약점 존재)

Network - Lab 4

Q: TCP 192.168.1.2:53398 150.203.56.47:80 CLOSE_WAIT

A: 소켓이 현재 닫혀진 상태이나, 웹 서버로부터 마지막 ACK를 받기를 기다리는 상태


Q: Packets with a source IP address of 0.0.0.0 is used (by DHCP) to signify what? What does the address mean to the Operating System? Why do we use it that way?

A: 이는 해당 호스트가 현재 아이피 주소를 모르고 있은 상태이고, 이로 인하여 해당 호스트와 연락하기 위해서는 브로드캐스트를 이용 할 수 밖에 없다. 운영체제에서 0.0.0.0 은 “모든 인터페이스” 를 뜻하며 모든 인터페이스들에게 보내지고 모든 인터페이스는 이 메세지를 듣는다.


Q: Why does DHCP have both discover/offer AND request/acknowledge? Why not just
request/acknowledge?

A: DHCP의 아이피 주소 할당은 임시 (lease)이며 확인되어야 하기 때문이다. 또한 만약 여러기기가 동시에 같은 아이피 주소를 요청할 경우를 대비해야 하기 때문이다. 따라서 서버와 클라이언트는 해당 아이피가 고유하다는것을 알기위한 확인 절차가 필요하다.

  • Server Discovery
  • IP lease offer
  • IP Request
  • IP lease ACK

Q: Give some examples where and why a single IP address may be used by multiple (DNS)
names? What about examples where a single name may resolve to multiple
addresses?

A: 예를 들어 같은 아이피 주소를 가지고 있는 웹서버와 메일 서버 같은 다른 서비스를 제공하는 경우. 이는 결국 일어날 서비스의 이동에 대한 유연성을 준다. 한 이름에 대한 여러가지 주소를 가지는 경우는 옵션과 같이 사용되는데 첫번째가 사용 불가하면 두번째가 사용된다던가, 혹은 이로 인해 로드 밸런싱도 가능하다.


Q: In DNS, how are Zones and Domains different?

A: 도메인의 경우 DNS 의 일정 부분을 이야기한다. 예를 들어 anu.edu.au 의 경우 도메인이고 (au, edu, anu 순으로 내려온다), 이 이하의 다양한 부서와 서버들과 같은 여러가지를 묶어서 zone 이라고 표한다.


Q: Why are DNS delegations legally important?

A: 도메인 네임은 보통 그 해당 entity의 법적 이름과 연결된다. 즉 구글이라는 사업체가 있는데 이를 모방해서 google.com 등을 사용한다면? 이는 곧 사기와 trademark infringement 와 같은 법을 어기는것.


Q: What’s the difference (and for/against) using Iterative or Recursive DNS queries?

A: Interative 는 내 스스로가 정보를 받고 다음에 물어보고 받고 물어보고 하는형식 Recursive는 네임서버에게 물어보면 걔가 알아서 물어물어 정보 가져다 주는것. 당연히 Recursive가 편하지만 더 느림.

Network - Lab 2

Reference:

  • The Australian National University CECS

Q: Statistical Mulitplexing 과 다른 양방향 차이점 (CSMA/CD 말하는듯)

A: 통계적 멀티플렉싱은 “시도 해 보자” 형식으로 일정하며 공유되는 대역폭에 메세지가 전달되나 시도하는 방법 (겹치면 멈치고 나중에 다시 시도하고 그거). 나머지 TDM/FDM/SDM 등은 써킷으로 대역폭이 할당되어 있다. 즉 할당된 대역폭을 아무도 사용 안하고 있다면 그 대역폭이 낭비가 됨.


Q: 왜 프레임의 시작 끝 부분을 프레임 플래그를 통해 보여주는가? 그냥 길이 안말해주고

A: 싱크가 엇나가기 너무 쉽기 때문에 (비트 하나 오류). 정기적인 시작/끝 부분을 명시하면, 모두에게 프레임 길이 안에서 회복할 기회를 주게됨.


Q: 충돌 방지와 충돌 감지의 차이점

A: CA 는 모두가 랜덤한 시간을 기다리므로써 같은 타이밍에 전달 하는것을 막는다, CD는 충돌을 감지하면 멈추고 기다리는것.


Q: CTS/RTS 가 Hidden Terminal 문제를 어떻게 해결하며, 왜 메세지 길이가 정보에 포함되는가

A: CTS는 구간내 모두가 들음으로써 RTS를 보냈던 송신자도 수신자가 받을 준비가 됨을 안다. CTS는 RTS를 보낸 송신자가 이제 메세지를 n 만큼 보낼테니 이 구간동안은 다른 사람들은 다 조용히 있으라는 정보를 같이 전달하는것. 메세지가 전달 된후 (기다림의 구간이 끝나면) 다른 사람들도 일 시작함.. 숨겨진 지국 문제는 충돌 가능성으로 인한 네트워크 용량 감소를 야기한다.

숨겨진 지국 문제란, 1 과 2, 2와 3은 서로 겹치지만, 1과 3은 서로의 존재를 모른다 (즉 데이터를 보낼수 없다) 즉 이로 인해 1과 2가 통신중일때 3은 2가 사용중이라는것을 모른다. 하지만 2가 CTS를 보냄으로써 사용중임을 3이 알 수 있고 기다릴수 있다. 이 CTS RTS는 핸드쉐이크 프레임이라 한다. CSMA/CA 에서 CTS 프레임으로 숨겨진 지국으로 인한 충돌을 막는다. 이 시스템 자체는 Multiple Access CA 로 MACA 라고 불린다.


Q: 1000Base-T Ethernet

A: 1000Mb/s over Twisted Pairs (copper)


Q: Heartbeat signal (Normal Likn Pulse)를 Etheret은 왜 데이터를 송신하지 않을때 보내는가

A: 보냄으로써 자신이 존재 한다는것을 알리는것 (새로 연결됬던 기존이던). 이 시그널을 수신한 기기는 링크 라이트를 깜빡인다.


Q: 802.3/802.11의 프레임이 왜 preamble 로 시작하는지

A: 수신자가 절전모드에서 일어나서 수신 받을 준비 (클럭 동기화)를 위해서. 이것이 프리앰블의 존재 이유이고, 클럭동기화는 고정된 프리앰블을 통해 시작한다.


Q: 왜 무선 프레임은 fixed rate preamble과 header로 시작하는지

A: 신호율은 라디오 주파수에 따라 (거리 노이즈) 다른데 고정된 프리앰블이 양 기기가 모두 사용가능한지 아니면 주파수를 낮춰야 하는지 결정하기 위해서.


Q: 스패닝 트리 프로토콜/알고리즘 을 이더넷 네트워크에서 사용하는 가장 큰 이득은

A: 루프들을 없애 broadcast storm, 중복되는 프레임들, 비순서적인 프레임들을 방지 할수 있다.


Q: 가상랜은 이더넷 네트워크에서 사용하는 중요 이유는

A: 트래픽의 단절화 (독립화)로 인한 보안과 성능 향상.


Q: 2.4Ghz의 무선 밴드의 채널 공간 문제와, 왜 5GHz 는 문제가 없는가

A: 다양한 채널등의 중복. 최대 3개 까지만 서로 방해없이 스페이싱이 가능하고, 5Ghz의 경우 공간이 훨 씬 넓어서 채널간의 혼잡이 존재 하지 않음 (다만 거리가 짧아서 아직 덜 쓰임)


Q: 무선 Beacon 프레임의 이유는 무엇인가

A: Access Point가 SSID, channel, rates 등등을 광고하는것. 누가 있는지 듣고 있는 클라이언트에게 정보제공


Network - Lab 3

Reference:


Q: Why is the layer model for networking good idea?

A: 레이어들은 어느 기능등이 제공및 미제공 되는지에 대해 명확하게 해준다 (각각의 레이어의 서비스들의 명확성). 필요한 기능들이 무엇인지, 그리고 상/하 레이어와의 관계, 그리고 존재하는 기준들의 사용등.


Q: What’s a Protocol Data Unit, and what is a Service Data Unit?

A: PDU는 말 그대로 네트워크 프로토콜을 통한 두 종단간의 정보교환 패키지를 말한다 (전송은 세그먼트, 네트워크는 패킷 응용계층은 데이터/메세지). SDU는 보통 API 를 통한 두 레이어간의 한 종단 지점에서 교환되는 정보 패키지를 말한다 (캡슐화 되서 넘어갈때). PDU는 같은 레이어의 교환이고 SDU는 한 모델안에서의 수직적 교환이다.


Q: What’s the difference between a Frame and a Packet?

A: 프레임은 랜 프로토콜에서 (데이터 링크) 전송되는 다양한(불분명한) 길이를 말한다. 패킷은 변수-길이 (정해진) 화물을 가지고 전역 네트워크로 전송되는 것을 지칭한다 (아이피 패킷같은). 데이터그램이나 세그먼트와 다르게 UDP or TCP와 같은 인터넷 프로토콜로 전송된다.


Q: Why do we think of IP as being ‘end-to-end’ between hosts, and TCP/UDP as being ‘end-to-end’ between applications

A: 즉 아이피는 각 호스트 (기계들) 의 연결을, TCP/UDP는 어플리케이션 연결이 주된 임무라서.

  • 아이피는 다양한 종류의 랜 기술과 라우터등을 통한 광역-구간 (인터넷)에서 기계간의 연결을 제공한다. 랜과 라우터등은 필요한 정보만을 읽은뒤 이 패킷들을 올바른 지역으로 보내주는 역할 (물론 체크섬이나 홉, 그리고 NAT의 경우 아이피 주소와 포트등을 수정하기도 한다). 운영체제는 패킷을 받고 언팩한다 (포트가 운영체제에게 키를 전달해준다). 아이피는 종단에서 다른 종단을 찾아 내는데 필요하다.
  • 어플리케이션은 TCP/UDP (외 다른 프로토콜) 를 서로간 대화하는데 필요로 하는데, 포트는 운영체제에게 키를 제공함으로써 패킷 수하물 (페이로드)가 올바른 어플리케이션으로 전송되게 한다. 라우터와 다른 기기들은 (NAT와 깐깐한 네트워크 보안을 제외하고) 패킷안의 내용을 확인하지 않는다. TCP/UDP 는 어플리케이션끼리 이야기 하는데 필요한 프로토콜, 종단간의 위치를 찾는데는 사용되지 않는다.

Q: Why does the IETF standards process look for ‘rough consensus and running code’?

A: IETF (프로토콜 표준화 기구). The phrase is often extended into the saying “rough consensus and running code”, to make it clear that the IETF is interested in practical, working systems that can be quickly implemented. (거친 합의란, 모든 사람이 동의할 필요는 없지만, 관련자들간에 사용 될 수 있도록 합의된 상황이다. - 정치권에서 정당내에서 의견이 다르지만, 정당의 의견을 거친합의로 모은후 대중에게 알리는것과 같은것). 표준화를 만든다는것은 매우 복잡하고 끝이 보이질 않는 작업이다 (RFC 는 표준화 프로토콜의 공식 문서다). 프로토콜은 RFC문서에 명확한 기준을 가지고 명시되는데 이는, 다른 사람과 당신이 서버/클라이언트에서 통신할 수 있도록 가능케 해준다. 즉 이 거친 합의는, 모두가 이 프로토콜을 따르지는 않지만, 이 프로토콜을 따르는 사람들 끼리의 통신을 가능하게 한다.


Q: Which IP header and which ICMP packets are important for traceroute to find the path of packets? Why? (how does it use them?)

A: ICMP (Internet control message protocol). TTL값은 IP 데이터그램이 인터넷 시스템 내에서 존재할 수 있는 시간의 상한선으로 볼 수 있다. TTL 필드는 데이터그램의 송신자에 의해 설정되며, 목적지까지의 전송 경로에 있는 모든 라우터들에 의해 그 값이 감소된다. 목적지에 다다르기 전에 TTL 필드의 값이 0이 되면 해당 데이터그램은 폐기되고 ICMP 에러 데이터그램 11 - Time Exceeded가 송신자에게 보내진다. TTL 필드의 목적은 전달되지 못한 데이터그램이 인터넷 시스템 내에서 지속적으로 순환하여 넘쳐나게 되는 상황을 방지하는 데에 있다. Traceroute는 1부터 선형적으로 늘어나는 TTL을 포함시켜 목적지로 보낸다 (죽으면 하나 늘려서 다시 보내고 등등). Each router will decrease the TTL by one, our server on the other end will receive an IP packet with a TTL of one and replies with an ICMP reply to H1. We now know that the destination is reachable and we have learned all routers in our path. Each IP packet that we send is called a probe. Traceroute can be used with ICMP, UDP and TCP, depending on your operating system.

정리: TTL이 0이 될때마다 라우터는 자신의 아이피 주소와 시간초과 패킷을 보내고, 서버또한 수신 응답 메세지를 보내므로, 서버까지 도달하는 라우터들의 주소 즉 경로들을 알 수 있게 된다. 이 방법은 최단 경로를 항상 의미 하지 않으며, 최단 경로를 제공 받는 경우는 라우팅 테이블이 최적으로 관리되고 있을때만이다.


Q: Given some /25 address range, how many hosts could we potentially have on our network? What does the /25 netmask look like in dotted-quad notation?

A: 네트워크 주소는 총 4바이트로 32비트이다. /25는 첫 25비트가 호스트 주소이고 나머지 7비트가 내 개인 주소가 된다. 2의 7승은 128인데 1개는 유선, 1개는 브로드캐스트 주소를 빼면 128-2 = 126개가 된다.

/25 넷마스크는 첫 25 자리가 모두 1이라는 뜻이므로 255.255.255.128 이 된다. 즉 128~255 사이의 128개 중 126 개가 가능한것.


Q; What’s the benefit of using the longest-prefix rule in forwarding table?

A: 수많은 주소들은 한 곳에 축약할 수 있음 (이 프리픽스에 해당하는 주소들을 프리픽스로 통합이니까). 이로 인해 예외적인 주소들을 추가 하고 싶으면, 해당하는 주소 한개만 더 추가하면 됨 (프리픽스 안에 주소 중 하나여도). aggregate an entire network’s worth of host addresses into a single entry. 장점은: 경로 찾기의 성능향상, 비용 감소, 안전성 증가.

IPv4 주소


Q: Why would a host send a Gratuitous ARP frame?

A: 쓸데 없는 ARP란 답변을 바라지 않는 브로드 캐스팅 패킷이다. 패킷안에는 송신자와 수신자 모두 같은 아이피를 가지고 있으며, 맥주소는 브로드캐스트 주소이다. 유용한 이유로는 다음이 있다.

  1. 아이피 충돌 감지. 해당 패킷을 받은 머신은 자신의 아이피와 비교후 충돌하는지 알 수 있다.
    1. 먼 DHCP에게 아이피를 받는 경우도 있어서 중복될 경우 충돌 확인이 가능하다.
    2. 혹은 자신이 아이피를 바꿀 경우에도 1,2번 모두 도움 가능.
  2. 다른 머신들의 ARP 테이블 업데이트를 도운다 (라우팅 테이블 같은거)
  3. 각 머신의 맥 주소 스위치에게 어는 포트로 연락을 취해야 하는지 알릴수 있음. (스위치는 해당 네트워크 세그먼트를 향한다고 생각하면 된다.)

Gratuitous_ARP

Network - Lab 1

Reference:

  • The Australian National University CECS

Q: Why frequency?

A: 자연은 날카로운 엣지 (디지털) 를 좋아하지 않고 웨이브를 선호함. 빛, 전자, 소리, 액체등 파동

(팍 하고 튀는거) 스위치는 순간적이지도, 지속적이지도 않음 (한번 킬때 팍 보내지도, 계속 보내지도 않음 짧은시간 유지임) 전구또한 확 켜지는게 아닌 밝아지고 어두워지는 형식.

즉 아날로그 파동과 주파수들의 조합을 이용해서 디지털 엣지를 구현하는식.


Q: Why FDM > Frequent Shift Keying?

A: Because electronics can be tuned to a frequency and use it as a dedicated channel with ASK/PSK. Hence better than using an idle frequencies and jumping between them. 즉 한 주파수 내에 정보를 담을수 있는데 주파수의 높낮이로 정보를 보내는것은 비효율적이다.


Q: The benefit of the thicker coax, and what are the main downsides?

A: Greater Shielding and noise protection, less resistance hence longer runs with same power. However; difficult to deplof (stiff) and expensive.


Q: Diff betwenn cat5 and 7

A: 7 has foil —> shield, solid core wires. Hence good quality and performance but higher cost with hard to deploy as it is harder to bend around the corner.


Q: Fiber. Diff between multimode and single mode.

A: Wider MMF core gets a brighter and broader light out of the end and easy to line up with LEDs. SMF core narrower than MMF and gives you much greater and higher data rates but costs alot more as it is harder to terminate and light up with laser (MMF uses LED)

SMF: 레이저, 두께에 따른 성능 차이 적음, 멀티모드보다 훨 빠름, 매우비쌈 (레이저라서)

MMF: LED 광원, 두께에 따른 성능차이 있음, 광원이 확산되고 코어지름이 커서 많은 신호를 보낼수 있는데 이로인해 전송거리가 SMF에 비해 짧음.


Q: How 16 QAM works

A:

  • Each position represents a unique phase and amplitude shift of a signal wave.
  • with 16 unique positions, can encode four bits per symbol (2^4 이니까 이진수로).
  • Can arbitrarily allocate patterns to points (아무대나 배치해도 됨).
  • Small bit pattern changes may result large changes in phase and amplitude ig. 0100 —> 0101.
  • Can have any QAM, but will be harder to separate n levels of ASK and PSK.
  • Efficienfy = bits can encode per symbol. 35 = 5.1 bits —> waste of spaces. Better to use power of 2.

Q: Nyquist. 1Mhz wave with amp modulated to 8 levels.

A: Potential datarate achievable = 2 * 1Mhz * lg(8) = 6 Mb/s. We multiply 2 as we can use 180 degree phase shift key = 2 bits into a single wave.


Q: Why copper less useful in longer distance?

A:

  • It has too much attenuation (energy loss) as wire resistive especially with higher frequencies.
  • Too Noisy as wire is an antenna
  • Can be fixed with shield, twist, diff signaling, better connectors…

Q: Why encoding bits into modulated signal important?

A:

  • It makes signal clear overall by ensuring a higher rate of transitions (easier to detect) to avoid same repeated bits like 1000000 hence solve “are you dead” problem.
  • Provide a mechanism for clock-recovery hence able to know how wide a bit is. (data rate and clock sync - bit boundaries).

Q: dB, dBm, and dBi mean.

A:

  • dB: signal/noise ratio. 20dB = 2B = 10^2. -20dB = -2B = 10^-2 = 0.01.
  • dBm: zero point is 1mW (0dBm = 1mW, 20dBm = 100mW)
  • dBi: measure gain of antenna relative to an isotropic antenna (transmitter or receiver).

Q: How can make wireless transmission better?

A: Shout louder or slower (clearer), frequency hopping to avoid noise (smarter), beam-shaping (focus), or higher/tailer antennas (terrain).


Q: How can make signal go further?

A: Repeater (regenerate signal), and amplifiers (both signal and noise). It costs money and power, and also may cause delay for unpack and repack process in repeater.


Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×