logo

  • home
  • head
  • itnews
  • product
  • mobile
  • game
  • benchmark
  • analysis
  • blog

액션, 모험, SF / 미국 / 2020 .04 개봉 감독 : 케이트 쇼트랜드 출연 : 스칼렛 요한슨(나타샤 로마노프 / ...
드라마, 뮤지컬 / 미국 / 118분 / 2020 .03.12 개봉 / [국내] 12세 관람가 감독 : 루퍼트 굴드 출연 : 르...

Matthew Tyson | JavaWorld


자바 개발 키트(Java Development Kit, JDK)는 자바 애플리케이션을 구축하기 위한 핵심 플랫폼 구성요소다. 이 중심에는 자바 컴파일러(Compiler)가 있다.

Credit: Nic McPhee (CC BY-SA 2.0)

JDK는 자바 가상 머신(Java Virtual Machine, JVM), 그리고 자바 런타임 환경(Java Runtime Environment, JRE)과 함께 자바 프로그래밍에 사용되는 3대 핵심 기술 패키지 가운데 하나다. 이 3가지 기술이 어떻게 연결되어 있는지, 또한 어떻게 다른지 구별하는 것이 중요하다.

- JVM은 프로그램을 실행하는 자바 플랫폼 구성요소다.
- JRE는 JVM을 생성하는 디스크 상의 부분이다.
- JDK는 개발자들이 JVM과 JRE에 의해 실행되고 구동될 수 있는 자바 프로그램을 생성할 수 있게 해준다.


자바를 처음 접하는 개발자는 JDK와 JRE를 혼동하는 경우가 종종 있다. 다른 점은 JDK가 자바 기반 소프트웨어를 개발하기 위한 도구들로 이뤄진 패키지인 반면, JRE는 자바 코드를 실행하기 위한 도구들로 구성된 패키지라는 점이다.

JRE는 단지 자바 프로그램을 구동하기 위한 독립형 구성요소로써 사용될 수도 있지만, 동시에 JDK의 일부이기도 하다. 자바 프로그램을 구동하는 것이 자바 프로그램 개발의 일환이기 때문에 JDK는 JRE를 필요로 한다. 다음 그림은 JDK가 자바 애플리케이션 개발 라이프사이클에서 어디에 속하는 지를 보여준다.

Credit: Matthew Tyson

DK에 대한 기술적 정의와 일반적 정의는 다음과 같다.
- 기술적 정의: JDK는 컴파일러와 클래스 라이브러리(Class Library)를 포함하는, 자바 플랫폼 사양서의 구현이다.
- 일반적인 정의: JDK는 개발자가 자바 기반 애플리케이션 개발을 위해 다운로드하는 소프트웨어 패키지다.

JDK와 자바 컴파일러
모든 JDK는 자바 애플리케이션 구동에 이용되는 환경이 JRE뿐만 아니라, 자바 컴파일러도 포함하고 있다. 컴파일러는 평범한 텍스트인 원시(Raw) .java 파일을 받아서 실행 가능한 .class 파일로 만드는 기능이 있는 소프트웨어다. 곧 컴파일러 사용을 볼 수 있을 것이다. 우선, 개발 환경으로 JDK를 다운로드해 설정하는 방법을 알려 줄 것이다.

JDK 시작하기
개발 환경에서 자바를 설정하는 것은 JDK를 다운로드하고 그것을 클래스경로(classpath)에 추가하는 정도로 매우 쉽다. 사용할 JDK를 다운로드 할 때, 사용할 자바 버전을 선택해야 한다. 자바 8이 가장 널리 사용되고 있지만, 기사 작성 시점에서는 자바 10이 최신 릴리즈다. 자바는 하위 호환성(Backward Compatibility)을 유지하고 있으므로, 최신 릴리즈를 다운로드 하기만 하면 된다.

JDK 패키지
자바 버전 선택과 함께, 자바 패키지도 선택해야 한다. 패키지(Package)란 서로 다른 유형의 개발을 표적으로 하는 자바 개발 키트다. 가용 패키지로는 자바 EE(Enterprise Edition), 자바 SE(Standard Edition), 그리고 자바 ME(Mobile Edition)이 있다.

초보 개발자라면 때로 어느 패키지가 자신의 프로젝트에 맞는지 확신이 서지 않을 수 있다. 일반적으로, 개별 JDK 버전은 자바 SE를 포함하고 있다. 자바 EE나 자바 ME를 다운로드하면, 표준 에디션(Standard Edition, SE)도 얻는 것이다. 예를 들면, 자바 EE는 엔터프라이즈 자바 빈(JavaBeans)이나 객체 관계 매핑(Object Relational Mapping, ORM) 지원 같은 엔터프라이즈 애플리케이션 개발에 유용한 추가적인 도구를 가지고 있는 표준 플랫폼이다.

필요한 경우, 나중에 다른 JDK로 전환하는 것도 어렵지 않다. 이제 막 시작한 경우, 맞는 자바 버전과 JDK 패키지 선정에 대해 너무 걱정하지 마라.

JDK 버전 호환성
JDK가 개발자의 자바 프로그램에 대한 컴파일러를 제공하기 때문에, 사용하는 JDK가 코드를 작성할 수 있는 자바 버전을 결정한다. 예를 들어, 화살표 람다 연산자(Lambda Operator)처럼 자바 8에 있는 좀 더 새로운 기능 지원을 사용하고 싶다면, 컴파일을 위해 최소한 자바 8 JDK가 필요할 것이다. 그렇지 않은 경우, javac 명령이 구문 오류를 표시하면서 해당 코드를 거부할 것이다.

JDK 다운로드
핵심 JDK 클래스와 기술에 초점을 맞추기 위해, 이번 튜토리얼에서는 자바 SE만을 사용할 것이다. 자바 SE JDK를 다운로드 하려면, 오라클의 공식 다운로드 페이지를 방문하라. 다음 그림에서처럼, 사용할 수 있는 다양한 JDK 패키지를 볼 수 있을 것이다.

Credit: Matthew Tyson

자바 SE 다운로드를 선택하기에 앞서, 다른 옵션들을 살펴보자. 여러 가지 자바 JDK들이 있다.
자바 표준 에디션 JDK를 다운로드 하라. 해당 옵션들은 다음 그림에 나와있다.

Credit: Matthew Tyson

자바 EE에 대해
주로 자바 기반 웹 애플리케이션에 관심이 있다면, 자바 EE JDK를 다운로드할 것이다. 자바 EE JDK에는 HTTP 요청 처리를 지원하는 자바 서버렛(Serverlet) 사양이 포함되어 있다. 모든 자바 EE JDK 구현은 자바 EE 애플리케이션을 구동하는 서버인 컨테이너(Container)도 필요로 한다. 글래스피시(Glassfish)는 오라클용 자바 EE 서버 참조 구현이다. 다른 인기있는 구현으로는 톰캣(Tomcat)과 제티(Jetty)가 있다.

JDK 설치
JDK 인스톨러(Installer, 설치 마법사)를 실행하면, 3가지 구성요소에 대한 선택사항이 주어진다. 개발 도구, 소스코드, 그리고 퍼블릭 JRE. 이 가운데 한 가지 또는 전체를 설치할 수 있다. 여기서는 기본(Default)을 선택한다.

"개발 도구" 옵션을 설치는 적절한 JDK를 제공한다. "소스코드" 설치에는 핵심(Core) 자바 API에 있는 퍼블릭 클래스들에 대한 소스가 포함된다. 이 옵션을 포함시키면 개발자는 앱을 구축할 때 소스코드를 참조할 수 있다. 세 번째 옵션인 "퍼블릭 JRE"는 JDK와 JRE가 별개의 객체임을 충분히 납득시킨다. 퍼블릭 JRE는 자바 프로그램을 실행하기 위해 다른 프로그램들이 사용할 수 있으며, JDK와는 별개로 설치될 수 있다.

여기서는 2가지 구성요소 모두를 설치하고 각각에 대해 기본 값을 사용한다. 이렇게 한다는 것은 JDK와 JRE가 사용 중인 운영체제의 기본 위치에 설치된다는 것을 의미한다. 윈도우에서는 다음 그림에서처럼 C:\Program Files\Java 이다.

Credit: Matthew Tyson

명령 줄에서 JDK 사용
JDK와 JRE 설치는 명령 줄에 java 명령어를 추가한다. 명령 셸을 실행하고 설치된 자바 버전을 알려주는 java –version을 입력함으로써 이를 확인할 수 있다(어떤 경우에는 시스템 경로에 변경사항을 반영하기 위해 시스템을 재 시작해야 할 수도 있다).

java 명령어가 있는 것은 좋다, 그런데 javac는 어떤가? 자바 파일을 컴파일하기 위해서는 이 JDK 요소가 필요하다.

javac 명령어
javac 명령어는 /jdk 디렉토리 안에 들어 있지만, 설치 중에 시스템 경로에 자동으로 추가되지는 않는다. javac를 설치할 수 있는 옵션을 행사하거나, 이 명령어를 포함하고 있는 IDE를 설치할 수도 있다. 자바 프로그램을 예전의 방식으로 컴파일해서 실행하는 것으로 시작해보자.

간단한 자바 프로그램 만들기
- 1단계. 간단한 자바 프로그램 작성
Intro.java라는 새로운 텍스트 파일을 생성하고, 그것을 문서 폴더 같은 곳에 저장하라. 그 다음에는 간단한 자바 프로그램인 목록 1의 코드를 추가하라.

목록 1. Intro.java
public class Intro {

public static void main(String[] args) {
System.out.println("Welcome to the JDK!");
}

}


- 2단계: JDK를 사용해 컴파일하기
텍스트 파일을 실행 가능한 프로그램으로 만들기 위해 JDK 컴파일러를 사용하라. 자바로 컴파일 된 코드를 바이트코드(Bytecode)라 부르며, .class 확장자가 붙는다.

자바 컴파일러의 약자인 javac 명령을 사용하게 될 것이다. 명령 셸에 명령어의 전체 경로를 입력하고, Intro.java 파일을 넘겨라. 필자의 시스템에서는 목록 2처럼 보인다.

목록 2. JDK를 사용해 컴파일하기
"C:\Program Files\Java\jdk-10.0.1\bin\javac.exe" Intro.java

이렇게 하면, 컴파일에 성공할 것이다. javac는 성공 메시지를 표시하지 않는다. 단지 새로운 파일만 출력할 것이다. 오류는 콘솔에 표시된다.

- 3단계. .class 파일 실행
Intro.java와 같은 디렉토리에서 Intro.class 파일을 볼 수 있을 것이다.

java Intro를 입력해 실행할 수 있으며, 목록 3의 결과가 보여질 것이다. 이 명령을 입력할 때 .class를 포함하지 않음에 유의하라.

목록 3. Intro.class 실행
C:\Users\mtyson\Documents>java Intro
Welcome to the JDK!


jar 명령어
javac은 JDK의 스타지만, /bin 디렉토리에는 필요한 다른 도구들이 들어있다. javac 다음으로 가장 유망한 것은 jar 도구일지도 모르겠다.

.jar 파일은 패키지 된 자바 클래스 세트다. 일단 컴파일러가 .class 파일을 생성한 다음에는, 개발자가 이것들을 예측 가능한 방식으로 압축하고 체계화하는 하나의 .jar 파일에 넣을 수 있다.

Intro.classjar 파일로 변환해보자.
Intro.java를 저장한 위치로 되돌아가서, 목록 4에 보여진 명령어를 입력하라.

목록 4. JAR 파일 생성
C:\Users\mtyson\Documents>"c:\Program Files\Java\jdk-10.0.1\bin\jar.exe" --create --file intro.jar Intro.class

jar 실행
이제 해당 디렉토리에서 Intro.jar 파일을 볼 수 있을 것이다. 이를 클래스경로에 추가하고 다음과 같이 안에 있는 프로그램을 실행함으로써 .jar를 활용할 수 있다:

java -cp intro.jar Intro

-cp 스위치는 자바에게 해당 jar를 클래스경로에 추가하라고 지시한다. 이렇게 작은 프로그램에 대해서는 .jar 파일이 과한 것이지만, 프로그램의 크기가 늘어나고 써드파티 패키지에 의존해감에 따라 필수적이 된다.

사용 중인 IDE에서의 JDK
JDK 다운로드 페이지를 떠올려보면, 넷빈즈(Netbeans) IDE가 포함된 다운로드 옵션이 기억날 것이다. IDE 또는 통합 개발 환경(Integrated Development Environment)는 애플리케이션 개발을 위한 종합적인 도구 세트를 제공해주는 소프트웨어다. IDE를 코드 자동 완성과 포매팅 같은 개발 고유의 추가 기능과 함께, 파일 탐색기나 텍스트 편집기 같은 도구 세트를 가지고 있는 시각적 운영체제라고 생각하라.

자바 개발에서, IDE가 하고 있는 핵심 사항 가운데 하나는 개발자 대신 컴파일 작업을 관리하는 것이다. 즉, IDE가 백그라운드에서 자동으로 컴파일 과정을 실행하므로, 개발자가 이 작업을 계속해서 할 필요가 없다. IDE는 작업 과정에 따라 실시간 피드백을 제공해, 즉각적으로 코딩 오류를 잡아낸다.

자바용으로 강력한 IDE다 몇 가지 있다. 지금까지 명령 줄에서 JDK의 동작 원리를 보았으니, 이제는 이클립스 IDE에서 어떻게 동작하는지 짧게 살펴보자.

이클립스(Eclipse)와 JDK
이클립스 설치는 본 가이드의 범위 밖이지만, 간단한 프로세스다. 이클립스에는 다른 프로그램들과 마찬가지로 인스톨러가 포함되어 있으며, 여기에서 사용 중인 운영체제에 맞는 인스톨러를 찾을 수 있다. 

이클립스가 설치되면, 메뉴 바에서 윈도우 메뉴 항목을 누르고 환경설정(preferences)을 선택하라.

환경설정 창 안에서, 자바 항목이 보일 것이다. 그것을 열면, 그 안에서 컴파일러 항목이 보인다. 이것을 클릭하면, JDK용 몇 가지 옵션이 나타난다. 다음 그림은 이클립스의 JDK 옵션 스냅샷을 보여준다.

Credit: Matthew Tyson

앞서 언급한 것처럼, 프로젝트에 맞는 JDK 버전을 선택해야 한다. 자세히 살펴보면, 개발자가 명령 줄에서 실행했던 것처럼 IDE가 JDK 컴파일러를 실행한다. 이클립스 IDE는 자체 JDK 인스턴스도 가지고 있다. IDE가 개발자 대신 JDK와 JRE를 관리해 일을 훨씬 수월하게 만들어준다.

이번 기사는 3가지 핵심 자바 플랫폼 구성요소를 소개하는 시리즈 중 두 번째다. JVM, JDK, 그리고 JRE. 이 시리즈의 다음 기사를 기대하라. editor@itworld.co.kr

원문보기: http://www.itworld.co.kr/howto/110817#csidx464d555507562479138ecf56c8a5f90 onebyone.gif?action_id=464d5555075624791






  1. 네트워크 월드 2020 네트워크 현황 “화두는 SD-WAN, 엣지 네트워킹, 보안”

    Michael Cooney | Network World IT 임원과 경영진이 미래를 위한 효율적이고 견고한 엔터프라이즈 커뮤니케이션 전략을 수립하는 과정에서 SD-WAN과 엣지, 5G 기술을 포함한 네트워크 추세가 지배적인 ...
    Date2020.05.06 CategoryIT KNOWLEDGE
    Read More
  2. IT 인프라 보안 자동으로 확인하기, 취약점 스캐너의 정의와 작동 방식

    Lucian Constantin | CSO 취약점 스캐너(vulnerability scanner)란 기업의 네트워크와 시스템, 애플리케이션을 자동으로 검사해 혹시 공격에 노출될 만한 보안 취약점이 없는지 확인하는 도구다. 취약점...
    Date2020.04.16 CategoryIT KNOWLEDGE
    Read More
  3. “데스크톱용 컨테이너가 온다” 윈도우 10X에 거는 기대

    Eric Knorr | Computerworld 마이크로소프트가 자사의 듀얼 스크린 윈도우 10X 운영체제용으로 새로운 컨테이너를 만들어 레거시 윈도우 애플리케이션을 구동할 수 있도록 했다. 윈도우의 미래에 미치는...
    Date2020.03.11 CategoryIT KNOWLEDGE
    Read More
  4. 초연결 시대가 불러올 사이버 공격의 변화: 2020 보안 위협 동향

    전 산업 분야에서 디지털 트랜스포메이션이 진행되고 있다. 비즈니스의 거의 모든 것이 ICT 기반의 인프라도 옮겨가면서 사이버 위협에 대한 우려 또한 심화되고 있다. 특히 지난 2019년 상용화된 5G에 힘...
    Date2020.02.02 CategoryIT KNOWLEDGE
    Read More
  5. 그 많은 2020 트렌드, 한눈에 모아보기

    2020년 새해가 밝았다. 가만히 돌아보면 최근 몇 년 새 유난히 세상이 빠르게 변화하는 느낌이다. 그래서일까. 해마다 연말 즈음이면 필수처럼 경제, 사회 등 각 분야의 트렌드를 예측하는 서적이 쏟아져 ...
    Date2020.01.03 CategoryIT KNOWLEDGE
    Read More
  6. “클라우드, ACI, SD-WAN, 제로 트러스트” 2020년 시스코가 집중할 영역

    Michael Cooney | Network World 업계가 2020년을 준비하고 있는 지금, 네트워크 분야는 조금 불안한 상태이다. 일부 주요 업체, 특히 아리스타(Arista)와 주니퍼(Juniper)가 신규 거래는 예상보다 감소...
    Date2019.12.11 CategoryIT KNOWLEDGE
    Read More
  7. AI 개발을 위한 최적의 프로그래밍 언어 6+2선

    Ian Pointer | InfoWorld 인공지능(Artificial Intelligence, AI)는 애플리케이션 개발자에게 무한한 가능성을 제공한다. 머신러닝 또는 딥 러닝을 활용해 훨씬 더 정확한 사용자 프로필, 개인 맞춤 설...
    Date2019.11.23 CategoryIT KNOWLEDGE
    Read More
  8. "무시해선 안된다" 프린터 보안, CSO가 책임져야

    J.M. Porup | CSO 대부분의 프린터는 안정된 보안 기능을 갖쳐져 있음에도 불구하고 재정 및 조직에서 잘못 배치되어 불안정하다.     ⓒ Getty Images Bank  심피온&NCC 그룹의 2개의 독립적인 보...
    Date2019.11.03 CategoryIT KNOWLEDGE
    Read More
  9. Subnet, 서브넷, Subnet Mask

    안녕하세요? 오리뎅이입니다. 오늘은 subnet에 대해서 정말 정말 쉽게 밑바닥(고수님들 보시면, 손가락 오글거림에 주의 요함. )까치 파헤쳐 보도록 하겠습니다. Subnet이란 것이 어찌 보면 아주 쉬...
    Date2019.10.05 CategoryIT KNOWLEDGE
    Read More
  10. 사이버보안 RSO가 되는 방법

    Frederick Scholl | CSO RSO란 무엇인가? 미국 밴더빌트 대학 교수 랑가라지 라마누잠의 저서 <신뢰성을 위한 조직(Organizing for Reliability)>에 따르면, RSO는 “신뢰성을 추구하는 조직(Reliability...
    Date2019.09.01 CategoryIT KNOWLEDGE
    Read More
  11. "리눅스에 대한 마이크로소프트의 사랑", WSL 2의 이해와 시작하기

    Simon Bisson | InfoWorld 마이크로소프트가 최근 빌드(Build) 컨퍼런스에서 리눅스용 윈도우 서브시스템(Windows Subsystems for Linux, WSL)의 두 번째 버전을 소개했다. 초기의 WSL 개념을 대대적으...
    Date2019.08.15 CategoryIT KNOWLEDGE
    Read More
  12. '줄리아' vs. '파이썬'··· 최고의 데이터 언어 대결

    Serdar Yegulalp | InfoWorld 파이썬은 데이터 분석용 언어로 확고하게 자리를 잡았다. 파이썬 생태계는 과학 계산과 데이터 분석 작업을 빠르고 편리하게 해 주는 라이브러리와 툴, 애플리케이션으로 ...
    Date2019.07.21 CategoryIT KNOWLEDGE
    Read More
  13. “개발자라면 누구나 반할” 서버리스 컴퓨팅의 효용

    Josh Fruhlinger | InfoWorld 개발자는 코드로 비즈니스 문제를 해결하느라 많은 시간을 소비한다. 개발자 다음은 운영 부서 차례다. 운영 부서는 먼저 개발자가 쓴 코드를 가용한 컴퓨터에서 구동하느...
    Date2019.07.05 CategoryIT KNOWLEDGE
    Read More
  14. "쿠버네티스와 컨테이너의 변화를 이끈다" 가장 믿음직한 쿠버네티스 배포판 10선

    Serdar Yegulalp | InfoWorld 쿠버네티스(Kubernetes)는 대규모 컨테이너 오케스트레이션이 필요한 경우 최적의 프로젝트로 꼽힌다. 구글이 만들어낸 오픈소스 컨테이너 시스템 쿠버네티스는 업게의 인...
    Date2019.05.23 CategoryIT KNOWLEDGE
    Read More
  15. 블록체인이 결제 산업의 5G로 각광 받는 이유

    Lucas Mearian | Computerworld 블록체인 기반 결제 네트워크와 명목 화폐 담보 디지털 화폐(미국 최대 은행의 화폐 포함)가 증가하면서 업계 전문가와 애널리스트들은 금융 서비스 산업의 혁신적인 변...
    Date2019.04.06 CategoryIT KNOWLEDGE
    Read More
  16. 모든 파이썬 프로그래머를 위한 20가지 실용적인 파이썬 라이브러리

    Serdar Yegulalp | InfoWorld 파이썬 프로그래밍 언어의 대성공을 이끈 힘은 무엇일까? 물론 답은 네이티브와 서드파티 라이브러리를 가리지 않는 풍부한 파이썬용 라이브러리다. 문제는 파이썬 라이브...
    Date2019.03.17 CategoryIT KNOWLEDGE
    Read More
  17. “떠오르는 와이파이 6, 우리 회사에 맞을까?” 적합성 기준과 준비 사항

    Zeus Kerravala | Network World 차세대 와이파이 표준인 802.11ax, 통칭 와이파이 6를 둘러싼 기대가 높다. 신기술은 업체에 의해 “차세대 대박 상품”으로 선전되다가 기대에 미치지 못하고 실패하는 ...
    Date2019.03.17 CategoryIT KNOWLEDGE
    Read More
  18. "네트워크 보안의 필수" SIEM 툴 TOP 12 평가 비교

    Tim Ferrill | CSO 보안 정보 및 이벤트 관리(Security information and event management, SIEM)은 네트워크 보안 전문가들을 위한 실용적인 툴이다. 이벤트 로그를 관리하고, 리뷰 및 감사하는 작업은...
    Date2019.01.13 CategoryIT KNOWLEDGE
    Read More
  19. SSL/TLS의 이해와 TLS 1.3으로 업그레이드해야 하는 이유

    Josh Fruhlinger | 웹 초창기부터, SSL(Secure Sockets Layer) 프로토콜과 그 후예인 TLS(Transport Layer Security)는 암호화와 보안을 제공해 인터넷 상거래를 가능하게 만들었다. SSL, TLS와 같은 프...
    Date2018.12.16 CategoryIT KNOWLEDGE
    Read More
  20. 2019년 리눅스에 기대해도 좋을 것

    Sandra Henry-Stocker | Network World 2019년은 리눅스의 해가 될지도 모른다. 리눅스가 드디어 유력 집단으로써 인정 받는 해가 될 수도 있다. 사물 인터넷(IoT), 클라우드 기술, 슈퍼컴퓨터, 인공 지...
    Date2018.12.07 CategoryIT KNOWLEDGE
    Read More
  21. "JDK란 무엇인가" 자바 개발 키트 소개와 설치하기

    Matthew Tyson | JavaWorld 자바 개발 키트(Java Development Kit, JDK)는 자바 애플리케이션을 구축하기 위한 핵심 플랫폼 구성요소다. 이 중심에는 자바 컴파일러(Compiler)가 있다. Credit: Nic Mc...
    Date2018.09.25 CategoryIT KNOWLEDGE
    Read More
  22. 리눅스 디렉토리 구조와 의미

    리눅스는 최상위 /(root)를 기본으로 하며 모든 디렉토리들이 /를 거치게 되는게 가장 큰 특징입니다. 디렉토리 설명 / 최상위에 위치하는 디렉토리이며 루트 디렉토리라고 부름. 일반적인 데...
    Date2018.08.06 CategoryIT KNOWLEDGE
    Read More
  23. 단방향 전송, 반이중전송, 전이중 전송, 허브, 스위치, 라우터, 토폴로지

    * 랜카드  - 근거리 통신망에 접속하기 위한 장비  - 최근에 메인보드에 통합 1. 반이중 방식(Half-Duplex)  - 양방향으로 데이터가 전송  - 동시에 전송 불가능  - 충돌을 피하기 위해 상대방의 데이...
    Date2018.06.22 CategoryIT KNOWLEDGE
    Read More
  24. 프록시 서버(Proxy Server)에 대해

    * Server에서 Proxy란? 출처: wikipedia.org Proxy Server 는 클라이언트가 자신을 통해서 다른 네트워크 서비스에 간접적으로 접속할 수 있게 해 주는 컴퓨터 Server 와 Client 사이에서 중계기로...
    Date2018.05.06 CategoryIT KNOWLEDGE
    Read More
  25. DNS의 작동원리와 이를 공격하는 방법

    Keith Shaw | Network World 도메인 이름 시스템(Domain Name System, DNS)은 인터넷 기반 가운데 하나지만 네트워킹 종사자를 제외한 대부분의 사람은 매일 일을 하고 이메일을 확인하고 스마트폰으로 ...
    Date2018.04.15 CategoryIT KNOWLEDGE
    Read More
  26. MPLS의 이해 (Multi-Protocol Label Switch)

    Neal Weinberg, Johna Till Johnson | Network World MPLS(Multi-Protocol Label Switching)의 핵심은 서비스가 아니라 기술이며, IP VPN부터 메트로 이더넷에 이르기까지 온갖 기능을 제공할 수 있다. ...
    Date2018.03.21 CategoryIT KNOWLEDGE
    Read More
  27. SD 브랜치와 보안, 스토리지, IoT의 관계

    Ciaran Roche | Network World SD-WAN의 자연스러운 계승자로 SD 브랜치(SD-Branch)가 회자되기 시작했다. 중앙집중화된 오케스트레이션 모델은 많은 대기업들에게 매력적일 수밖에 없다. 하지만 SD-WAN...
    Date2018.03.04 CategoryIT KNOWLEDGE
    Read More
  28. 취약점 표준코드 CVE의 개념과 목적

    Taylor Armerding | CSO CVE는 '정보 보안 취약점 표준 코드(Common Vulnerabilities and Exposures)'의 약자이다. 1999년, 미국 연방 정부의 후원을 받는 비영리 연구 개발 기관인 MITRE가 소프트웨어...
    Date2018.02.03 CategoryIT KNOWLEDGE
    Read More
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6