본문 바로가기

통신

[2] 컴퓨터 네트워크 클라이언트 : 서비스를 이용하는 사용자들의 단말기 서버 : 서비스를 제공하는 무인 컴퓨터 네트워크 스위치 - PC간 랜선으로 연결하여 LAN(Local Area Network)를 형성 OSI 7계층 1. 물리 계층 : 하드웨어를 다루며 데이터의 파형을 결정 2. 데이터 링크 계층 - 프레임(frame)이라는 단위로 통신 - LAN 통신이 가능하게 함 - LAN간 데이터를 전송하지만 반드시 전송되지는 않음 3. 네트워크 계층 - WAN(Wide Area Network)이 가능하게 함 - 즉, LAN 간의 통신이 가능하게 하기 위해 네트워크 스위치간의 데이터가 전송되어야 함 - 이 때, 스위치에 데이터를 한 번에 전달하지 못할 경우, 이를 전달하기 위해서는 라우터(router)를 통함 - IP(Interne.. 더보기
[Openflow/SDN]Java로 SDN을 위한 Openflow Controller 를 만들기 위해 공부하면 좋은 사전 지식들 이번 포스트는 개인적인 공부를 위해 수시로 업데이트할까 생각중입니다. SDN을 Java에서 구축함으로써 조금 더 좋은 인터페이스로 시뮬레이션을 하기 위함인데, Openflow가 어떻게 동작하는지, 그리고 스위치와 컨트롤러 사이에는 어떠한 프로세스들이 진행되는지를 알고 싶어 검색하던 도중 발견한 귀한 사이트들을 적어두겠습니다. 1) Openflow에 대한 전반적인 지식을 알고 싶은 경우 www.jidum.com/jidums/view.do?jidumId=1076 지식덤프 1. OpenFlow의 개념 - 네트워크 장치의 Control Plane과 Data Plane 간의 인터페이스 위한 표준 통신 프로토콜 - 패킷을 제어하는 기능과 전달하는 기능을 분리하고 프로그래밍을 통해 네트워크를 제어하 www.jidum.. 더보기
[Java 소켓 프로그래밍 기초/실습] 간단한 채팅 프로그램 구현해보기 이 포스팅은 개인적인 socket programming 공부를 위해 여러 글들과 코드들을 참조하였습니다. 포스트 맨 아래, 그리고 코드 윗부분에 주석으로 참조를 첨부하였으니 확인 부탁드립니다. 이번에는 Java Socket Programming을 이용하여 간단한 채팅 프로그램을 구현해보고자 합니다. 들어가기에 앞서서... 항상 상속에 대하여 헷갈리는 부분이 있었기에 정리하고 가겠습니다. Java에서 상속(Inheritance)은 extends와 implements 두 가지가 존재합니다. 1) extends - 부모 메소드를 그대로 사용할 수 있으며 오버라이딩(메소드 재정의)을 할 필요가 없습니다. - class가 class를 상속할 때, interface가 interface를 상속할 때 extends를 .. 더보기
[Java 소켓 프로그래밍 기초/실습] Server-Client 통신해보기 최근 Java Socket Programming을 이용하여 해야 하는 프로젝트에 참여하게 되어 기초부터 공부하기 위해 작성한 글입니다. 다른 블로거 분들의 코드와 글을 참고하였으니 포스트 제일 하단 부분의 참조(reference) 확인 부탁드립니다. Java Socket Programming을 시작하게 되면 제일 먼저 시작하는 것이 Server-Client 간의 통신 구축입니다. 이를 위해서는 Server와 Client, 2개의 Class를 만들어야 합니다. 기존에 좋은 코드가 있어서 참고를 하고 제가 이해 안가거나 모르는 부분은 주석으로 상세히 설명해놓았습니다. Java 소켓 프로그래밍을 공부하시는 분들께 도움이 되었으면 합니다. 실습에 앞서서... Java라는 언어에 대한 깨알 설명 몇가지를 첨부하였.. 더보기
[네트워크]무선 LAN 통신 방식과 CSMA 무선 LAN의 통신 방식과 CSMA/CD 무선 LAN은 애드혹 모드(ad-hoc mode)와 하부 구조 모드(Infrastructure mode)로 구분된다. 1) 애드혹 모드 컴퓨터에 무선 LAN 카드를 장착하여 연결하는 1대1 통신이다. 외부 네트워크에 직접 연결되어 있지 않아도 네트워크를 구성하는 컴퓨터 중 하나가 외부 네트워크에 연결되어 있으면 간접적으로 외부 네트워크에 엑세스 가능하다. 2) 하부 구조 모드 개방형 네트워크 프로토콜을 사용함으로써 다른 기종 간의 연결뿐 아니라 서버의 부하를 최소화하여 노드 수가 증가하더라도 원활한 이용이 가능하다. 중앙 집중식으로 정보를 공유하기 때문에 애드혹 모드보다 빠른 속도로 액세스가 가능하며, 많은 수의 컴퓨터도 효율적으로 공유할 수 있다. 데이터 전송을.. 더보기
[네트워크] 통신 오류 검출 통신 오류 검출 통신을 하다 보면 여러 가지 이유로 비트 에러가 발생한다. 이 때, 수신 측에서 보낸 데이터가 정확하게 전달이 되었는지를 확인하는 방법이 통신 오류 검출이다. 통신 오류 검출에는 패리티 비트 검사, 블록 합 검사, 순환 중복 검사가 있다. 1) 패리티 비트 검사 패리티 비트 검사는 전송하는 데이터마다 패리티 비트를 하나씩 추가하여 비트가 1인 데이터의 개수가 짝수인지 홀수인지로 판별하는 방법을 말한다. 인코딩(encoding)하는 방법은 1) 짝수 패리티 방식의 경우 1인 비트의 개수를 짝수개로 맞춰주면 되고 2) 홀수 패리티 방식의 경우 1인 비트의 개수를 홀수개로 맞춰주면 된다. 만약 7비트의 데이터를 전송할 때 앞에 한 비트를 추가하여 8비트를 만든 후 1(Pb) 0 1 0 1 0 .. 더보기
[네트워크] 네트워크 접속 장치 네트워크 접속 장치 1) LAN카드(NIC : Network Interface Card) - 외부의 네트워크와 빠른 속도로 데이터를 송수신할 수 있도록 컴퓨터 내에 설치하는 확장카드로써 네트워크에 연결하는 물리적 장치에는 반드시 하나 이상의 LAN카드가 있어야 하며 네트워크 케이블을 연결하는 외부 포트를 포함하고 있다. - 각 LAN카드는 고유의 48비트로 된 물리적 주소 MAC(Media Access Control)을 포함하고 있다. 앞의 24비트는 LAN 칩셋 제조사를 의미, 뒤의 24비트는 제품의 일련 번호. * 역할 - 전송 매체에 접속 - 데이터 입출력 및 송수신, 프로토콜 처리 등을 담당 2) 허브(Hub) - 여러 개의 입출력 포트가 있는 특수한 형태의 네트워크 장치. 컴퓨터 두 대를 연결할.. 더보기