

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Aliran data multipleks dan menggunakan koneksi TCP simultan di terowongan aman
<a name="multiplexing"></a>

Anda dapat menggunakan beberapa aliran data per terowongan dengan menggunakan fitur multiplexing tunneling aman. Dengan multiplexing, Anda dapat memecahkan masalah perangkat menggunakan beberapa aliran data. Anda juga dapat mengurangi beban operasional dengan menghilangkan kebutuhan untuk membangun, menyebarkan, dan memulai beberapa proxy lokal atau membuka beberapa terowongan ke perangkat yang sama. Misalnya, multiplexing dapat digunakan dalam kasus browser web yang memerlukan pengiriman beberapa aliran data HTTP dan SSH.

Untuk setiap aliran data, tunneling AWS IoT aman mendukung koneksi TCP simultan. Menggunakan koneksi simultan mengurangi potensi time-out jika terjadi beberapa permintaan dari klien. Misalnya, ini dapat mengurangi waktu pemuatan saat mengakses server web dari jarak jauh yang lokal ke perangkat tujuan.

Bagian berikut menjelaskan lebih lanjut tentang multiplexing dan menggunakan koneksi TCP simultan, dan kasus penggunaannya yang berbeda.

**Topics**
+ [Multiplexing beberapa aliran data dalam terowongan aman](multiplexing-multiple-streams.md)
+ [Menggunakan koneksi TCP simultan di terowongan aman](multiplexing-simultaneous-tcp.md)

# Multiplexing beberapa aliran data dalam terowongan aman
<a name="multiplexing-multiple-streams"></a>

Anda dapat menggunakan fitur multiplexing untuk perangkat yang menggunakan beberapa koneksi atau port. Multiplexing juga dapat digunakan ketika Anda memerlukan beberapa koneksi ke perangkat jarak jauh untuk memecahkan masalah apa pun. Misalnya, dapat digunakan dalam kasus browser web yang memerlukan pengiriman beberapa aliran data HTTP dan SSH. Data aplikasi dari kedua aliran dikirim ke perangkat secara bersamaan melalui terowongan multipleks.

## Contoh kasus penggunaan
<a name="multiplexing-use-case"></a>

Katakanlah Anda perlu terhubung ke aplikasi web di perangkat untuk mengubah beberapa parameter jaringan, sekaligus mengeluarkan perintah shell melalui terminal untuk memverifikasi bahwa perangkat berfungsi dengan baik dengan parameter jaringan baru. Dalam skenario ini, Anda mungkin perlu terhubung ke perangkat melalui HTTP dan SSH dan mentransfer dua aliran data paralel untuk mengakses aplikasi web dan terminal secara bersamaan. Dengan fitur multiplexing, kedua aliran independen ini dapat ditransfer melalui terowongan yang sama pada saat yang bersamaan.

![\[Diagram yang menunjukkan arsitektur cloud IoT dengan perangkat sumber, server proxy, dan perangkat tujuan untuk streaming data melalui protokol yang berbeda.\]](http://docs.aws.amazon.com/id_id/iot/latest/developerguide/images/tunnel-multiplexing.png)


## Cara mengatur terowongan multipleks
<a name="multiplexing-tutorial"></a>

Prosedur berikut memandu Anda melalui cara mengatur terowongan multipleks untuk perangkat pemecahan masalah menggunakan aplikasi yang memerlukan koneksi ke beberapa port. Anda akan mengatur satu terowongan dengan dua aliran multipleks: satu aliran HTTP dan satu aliran SSH.

1. 

**(Opsional) Buat file konfigurasi**

   Anda dapat secara opsional mengonfigurasi perangkat sumber dan tujuan dengan file konfigurasi. Gunakan file konfigurasi jika pemetaan port Anda cenderung sering berubah. Anda dapat melewati langkah ini jika Anda lebih suka menentukan pemetaan port secara eksplisit menggunakan CLI, atau jika Anda tidak perlu memulai proxy lokal pada port mendengarkan yang ditunjuk. Untuk informasi selengkapnya tentang cara menggunakan file konfigurasi, lihat [Opsi yang disetel melalui --config](https://github.com/aws-samples/aws-iot-securetunneling-localproxy#options-set-via---config) di. GitHub

   1. Di perangkat sumber Anda, di folder tempat proxy lokal Anda akan berjalan, buat folder konfigurasi bernama`Config`. Di dalam folder ini, buat file yang disebut `SSHSource.ini` dengan konten berikut:

      ```
      HTTP1 = 5555
      SSH1 = 3333
      ```

   1. Di perangkat tujuan Anda, di folder tempat proxy lokal Anda akan berjalan, buat folder konfigurasi bernama`Config`. Di dalam folder ini, buat file yang disebut `SSHDestination.ini` dengan konten berikut:

      ```
      HTTP1 = 80
      SSH1 = 22
      ```

1. 

**Buka terowongan**

   Buka terowongan menggunakan operasi `OpenTunnel` API atau perintah `open-tunnel` CLI. Konfigurasikan tujuan dengan menentukan `SSH1` dan `HTTP1` sebagai layanan dan nama AWS IoT benda yang sesuai dengan perangkat jarak jauh Anda. Aplikasi SSH dan HTTP Anda berjalan di perangkat jarak jauh ini. Anda pasti sudah membuat IoT di registri. AWS IoT Untuk informasi selengkapnya, lihat [Mengelola hal-hal dengan registri](thing-registry.md).

   ```
   aws iotsecuretunneling open-tunnel \
   	--destination-config thingName=RemoteDevice1,services=HTTP1,SSH1
   ```

   Menjalankan perintah ini menghasilkan token akses sumber dan tujuan yang akan Anda gunakan untuk menjalankan proxy lokal.

   ```
   {
   	"tunnelId": "b2de92a3-b8ff-46c0-b0f2-afa28b00cecd",
   	"tunnelArn": "arn:aws:iot:us-west-2:431600097591:tunnel/b2de92a3-b8ff-46c0-b0f2-afa28b00cecd",
   	"sourceAccessToken": source_client_access_token,
   	"destinationAccessToken": destination_client_access_token
   }
   ```

1. 

**Konfigurasikan dan mulai proxy lokal**

   Sebelum Anda dapat menjalankan proxy lokal, siapkan AWS IoT Device Client, atau unduh kode sumber proxy lokal dari [GitHub](https://github.com/aws-samples/aws-iot-securetunneling-localproxy)dan buat untuk platform pilihan Anda. Anda kemudian dapat memulai tujuan dan proxy lokal sumber untuk terhubung ke terowongan aman. Untuk informasi selengkapnya tentang mengonfigurasi dan menggunakan proxy lokal, lihat[Cara menggunakan proxy lokal](how-use-local-proxy.md).
**catatan**  
Di perangkat sumber Anda, jika Anda tidak menggunakan file konfigurasi apa pun atau menentukan pemetaan port menggunakan CLI, Anda masih dapat menggunakan perintah yang sama untuk menjalankan proxy lokal. Proxy lokal dalam mode sumber akan secara otomatis mengambil port yang tersedia untuk digunakan dan pemetaan untuk Anda.

------
#### [ Start local proxy using configuration files ]

   Jalankan perintah berikut untuk menjalankan proxy lokal dalam mode sumber dan tujuan menggunakan file konfigurasi.

   ```
   // ----------------- Start the destination local proxy -----------------------
   ./localproxy -r us-east-1 -m dst -t destination_client_access_token
   
   // ----------------- Start the source local proxy ----------------------------
   // You also run the same command below if you want the local proxy to
   // choose the mappings for you instead of using configuration files.
   ./localproxy -r us-east-1 -m src -t source_client_access_token
   ```

------
#### [ Start local proxy using CLI port mapping ]

   Jalankan perintah berikut untuk menjalankan proxy lokal dalam mode sumber dan tujuan dengan menentukan pemetaan port secara eksplisit menggunakan CLI.

   ```
   // ----------------- Start the destination local proxy -----------------------------------
   ./localproxy -r us-east-1 -d HTTP1=80,SSH1=22 -t destination_client_access_token
   
   // ----------------- Start the source local proxy ----------------------------------------
   ./localproxy -r us-east-1 -s HTTP1=5555,SSH1=33 -t source_client_access_token
   ```

------

Data aplikasi dari koneksi SSH dan HTTP sekarang dapat ditransfer secara bersamaan melalui terowongan multipleks. Seperti yang terlihat pada peta di bawah ini, pengenal layanan bertindak sebagai format yang dapat dibaca untuk menerjemahkan pemetaan port antara perangkat sumber dan tujuan. Dengan konfigurasi ini, tunneling aman meneruskan lalu lintas HTTP yang masuk dari port *5555* pada perangkat sumber ke port *80* pada perangkat tujuan, dan lalu lintas SSH yang masuk dari port *3333* ke port pada perangkat tujuan. *22*

![\[Proses penerjemahan untuk memetakan pengenal layanan dari proxy lokal sumber dan tujuan ke pemetaan port yang diterjemahkan setelah diproses.\]](http://docs.aws.amazon.com/id_id/iot/latest/developerguide/images/multiplexing-post-mapping-translation.png)


# Menggunakan koneksi TCP simultan di terowongan aman
<a name="multiplexing-simultaneous-tcp"></a>

AWS IoT tunneling aman mendukung lebih dari satu koneksi TCP secara bersamaan untuk setiap aliran data. Anda dapat menggunakan kemampuan ini ketika Anda memerlukan koneksi simultan ke perangkat jarak jauh. Menggunakan koneksi TCP simultan mengurangi potensi time-out jika terjadi beberapa permintaan dari klien. Misalnya, saat mengakses server web yang memiliki beberapa komponen yang berjalan di atasnya, koneksi TCP simultan dapat mengurangi waktu yang diperlukan untuk memuat situs. 

**catatan**  
Koneksi TCP simultan memiliki batas bandwidth 800 Kilobyte per detik untuk masing-masing. Akun AWS AWS IoT tunneling aman dapat mengonfigurasi batas ini untuk Anda tergantung pada jumlah permintaan yang masuk.

## Contoh kasus penggunaan
<a name="tcp-use-case"></a>

Katakanlah Anda perlu mengakses server web dari jarak jauh yang lokal ke perangkat tujuan dan memiliki beberapa komponen yang berjalan di atasnya. Dengan koneksi TCP tunggal, saat mencoba mengakses server web, pemuatan berurutan dapat meningkatkan jumlah waktu yang diperlukan untuk memuat sumber daya di situs. Koneksi TCP simultan dapat mengurangi waktu pemuatan dengan memenuhi persyaratan sumber daya situs, sehingga mengurangi waktu akses. Diagram berikut menunjukkan bagaimana koneksi TCP simultan didukung untuk aliran data ke aplikasi server web yang berjalan pada perangkat jarak jauh.

**catatan**  
Jika Anda ingin mengakses beberapa aplikasi yang berjalan di perangkat jarak jauh menggunakan terowongan, Anda dapat menggunakan multiplexing terowongan. Untuk informasi selengkapnya, lihat [Multiplexing beberapa aliran data dalam terowongan aman](multiplexing-multiple-streams.md).

![\[Ilustrasi yang menunjukkan pengaturan cloud IoT dengan perangkat sumber, proxy lokal, server proxy, dan perangkat tujuan dengan aplikasi server web, terhubung melalui protokol TCP dan WSS.\]](http://docs.aws.amazon.com/id_id/iot/latest/developerguide/images/tcp-tunneling.png)


## Cara menggunakan koneksi TCP simultan
<a name="multiple-tcp-tutorial"></a>

Prosedur berikut memandu Anda melalui cara menggunakan koneksi TCP simultan untuk mengakses browser web pada perangkat jarak jauh. Ketika ada beberapa permintaan dari klien, tunneling AWS IoT aman secara otomatis mengatur koneksi TCP simultan untuk menangani permintaan, sehingga mengurangi waktu pemuatan.

1. 

**Buka terowongan**

   Buka terowongan menggunakan operasi `OpenTunnel` API atau perintah `open-tunnel` CLI. Konfigurasikan tujuan dengan menentukan `HTTP` sebagai layanan dan nama AWS IoT benda yang sesuai dengan perangkat jarak jauh Anda. Aplikasi server web Anda berjalan di perangkat jarak jauh ini. Anda pasti sudah membuat IoT di registri. AWS IoT Untuk informasi selengkapnya, lihat [Mengelola hal-hal dengan registri](thing-registry.md).

   ```
   aws iotsecuretunneling open-tunnel \
   	--destination-config thingName=RemoteDevice1,services=HTTP
   ```

   Menjalankan perintah ini menghasilkan token akses sumber dan tujuan yang akan Anda gunakan untuk menjalankan proxy lokal.

   ```
   {
   	"tunnelId": "b2de92a3-b8ff-46c0-b0f2-afa28b00cecd",
   	"tunnelArn": "arn:aws:iot:us-west-2:431600097591:tunnel/b2de92a3-b8ff-46c0-b0f2-afa28b00cecd",
   	"sourceAccessToken": source_client_access_token,
   	"destinationAccessToken": destination_client_access_token
   }
   ```

1. 

**Konfigurasikan dan mulai proxy lokal**

   Sebelum Anda dapat menjalankan proxy lokal, unduh kode sumber proxy lokal dari [GitHub](https://github.com/aws-samples/aws-iot-securetunneling-localproxy)dan buat untuk platform pilihan Anda. Anda kemudian dapat memulai tujuan dan proxy lokal sumber untuk terhubung ke terowongan aman dan mulai menggunakan aplikasi server web jarak jauh.
**catatan**  
Agar tunneling AWS IoT aman menggunakan koneksi TCP simultan, Anda harus meningkatkan ke versi terbaru dari proxy lokal. Fitur ini tidak tersedia jika Anda mengonfigurasi proxy lokal menggunakan AWS IoT Device Client.

   ```
   // Start the destination local proxy
   ./localproxy -r us-east-1 -d HTTP=80 -t destination_client_access_token
   
   // Start the source local proxy
   ./localproxy -r us-east-1 -s HTTP=5555 -t source_client_access_token
   ```

   Untuk informasi selengkapnya tentang mengonfigurasi dan menggunakan proxy lokal, lihat[Cara menggunakan proxy lokal](how-use-local-proxy.md).

Anda sekarang dapat menggunakan terowongan untuk mengakses aplikasi server web. AWS IoT tunneling aman akan secara otomatis mengatur dan menangani koneksi TCP simultan ketika ada beberapa permintaan dari klien.