데이터 통신 시스템


  • 메시지 - 메시지(Message)는 통신의 대상이 되는 정보,즉 데이터. 텍스트, 숫자, 그림, 소리, 화상 등.
  • 송신자 - 송신자(Sender)는 데이터 메시지를 보내는 장치. 컴퓨터, 전화기, 비디오 카메라 등.
  • 수신자 - 수신자(Receiver)는 메시지를 수신하는 장치. 컴퓨터, 전화기, TV 등.
  • 전송매체 - 전송매체(Medium)는 메시지가 전송자로부터 수신자에게까지 이동하는 물리적 경로. 꼬임상선(twisted pair wire), 동축 케이블, 광섬유 케이블, 레이저, 무선파 등.
  • 프로토콜 - 프로토콜(Protocol)은 데이터통신을 통제하는 규칙의 집합이다. 프로토콜은 통신하고 있는 장치들 사이의 상호합의를 나타낸다. 프로토콜이 없다면 통신장비가 연결되어 있어도 서로 통신할 수 없게 된다.


데이터 흐름 방향

  • 단방향 (Simplex)
    • 단방향 방식(simplex mode)에서 통신은 한쪽 방향으로만 일어난다.
    • 하나의 링크에 연결되어 있는 두 기지국에서 한쪽은 전송만 할 수 있고, 다른쪽은 수신만 할 수 있다.
    • ex) 자판과 모니터.




  • 반이중(Half-duplex)
    • 반이중 방식(half-duplex mode)에서 각 기지국은 송신과 수신이 가능하지만, 동시에 할 수는 없다.
    • 한 장치가 송신하면 다른장치는 수신만 할 수 있게 된다.
    • 양방향으로 통행이 가능한 외길과 같다. 
    • ex) 워키토키와 민간방송용 라디오(CB radio)




  • 전이중(full-duplex, duplex)
    • 전이중 방식(mode)은 두 대의 단말기가 데이터를 송수신하기 위해 동시에 각각 독립된 회선을 사용하는 통신 방식.
    • 전이중 방식은 양방향으로 통행이 가능한 2차선 도로와 같다.
    • 전이중 방식에서 신호는 링크의 용량을 공유해서 양방향으로 전달된다.
    • ex) 전화망, 고속 데이터 통신




'데이터통신 & 네트워크' 카테고리의 다른 글

이더넷과 토큰링  (0) 2019.01.07
클라이언트와 서버  (0) 2018.12.31

트리의 지름 : 트리에서 임의의 두 점의 거리가 가장 긴 것




구하는 방법


1. 아무 점(A)을 잡고 DFS 혹은 BFS를 돌려서 A에서 가장 멀리 있는(가중치 합이 최대인) 점(U)를 구한다.


2. 구한 점(U)을 시작점으로 DFS 혹은 BFS를 돌려서 U에서 가장 멀리있는(가중치 합이 최대인) V를 구한다.

(여기서 가중치 합이 최대 => 트리의 지름)


3.  U,V가 트리 지름을 만드는 두 점


증명

https://koosaga.com/14

http://blog.myungwoo.kr/112


  • nullable type : null을 가질 수 있는 type (type 뒤에 물음표) 
 
    ex) var str: String? = "AAA"
        str=null     // str은 nullable type으로 null을 가질 수 있다. 
    println(${str.length})    // nullable 타입은 null이 가능하므로 참조하는 것이 위험하다.=> str이 null일 때 Error가 난다. 

  • nullable type의 참조의 방법 
 ex)
  println(${str?.length}) // save call을 하는 방법 ,   str이 null이면 null 출력.
   println(${str!!.length})  //   느낌표 2개를 붙이면 str이 null 이라도 참조/호출 . str이 null인 경우 null pointer exception 발생
  println(${str?.length ?: "null이면 여기 출력됨"})     // elvis operator와 함께 사용할 수 있다.

      

  • non-null type : null을 가질 수 없는 type
ex) var str : String = "AAA"
    str=null   //   -> str은 non-null type이라 null을 가질 수 없다. 따라서 Error


'Kotlin' 카테고리의 다른 글

[Kotlin] Any 클래스, 타입 체크  (3) 2018.07.18
[Kotlin] 기본 자료형, 변수와 상수  (0) 2018.07.18

+ Recent posts