# Thunderbolt (interface)

Thunderbolt é uma interface de comunicações desenvolvida pela Intel com auxílio técnico da Apple Inc., atingindo patamares de conexão de 10 Gb/s (duas vezes acima do padrão Universal Serial Bus 3.0 - USB 3.0). Atua de forma bidirecional, ou seja, envia e recebe os dados ao mesmo tempo (a chamada comunicação full-duplex) sem perda de velocidade em ambos os sentidos. Assim, o Thunderbolt chega com uma tecnologia que além de oferecer altas taxas de transferências, também possibilita interconexão com os mais variados tipos de dispositivos disponíveis no mercado. Durante a pesquisa e desenvolvimento da interface ela foi chamada de Light Peak. Os primeiros notebooks com a interface Thunderbolt são os MacBook Pro lançados pela Apple Inc. em 24 de fevereiro, 2011.

## Principais características

* Transferência de dados bidirecional e dual-channel com velocidade de 10 Gb/s;
* Dados e vídeo em um único cabo com Dual-protocol (PCI Express* e DisplayPort*)
* Conecta diversos computadores;
* Compatível com os atuais dispositivos DisplayPort*;
* Usa drivers de protocolo de software nativos da PCI Express* e da DisplayPort*;
* Alimentação via cabo para dispositivos alimentados pelo bus (apenas cabos elétricos);

## História
### Introdução

Em 2009, na Intel Developer Forum (IDF), é anunciado o Thunderbolt, que na época tinha o codinome Light Peak. Para demonstrar o Light Peak, a Intel utilizou um protótipo da placa lógica do Mac Book Pro para rodar dois fluxos de vídeo de 1080 px, um dispositivo de rede local e um de armazenamento, através de um único cabo óptico com 30 m de comprimento.
Em setembro 2010, os primeiros protótipos do Thunderbolt são apresentados pela Intel no Intel Developer Forum (IDF).
No inicio de fevereiro de 2011, surgem muitas especulações em relação a um novo padrão de transmissão de dados em computadores Apple, entre elas, que seria usado o Light Peak, mas não houve nenhuma confirmação.
Em fevereiro de 2011 a Apple lança o MacBook Pro, que no momento chamou muito a atenção, pois contava com uma nova tecnologia, o Thunderbolt. Tendo a Intel como desenvolvedora, esta nova tecnologia aproveitou dois recursos tecnológicos já existentes, o PCI Express e o DisplayPort. O PCI Express é muito utilizado para conexão de dispositivos internos, como placas de vídeo e placas Ethernet, enquanto o DisplayPort é utilizado para conexão de áudio e de vídeo.
Em junho de 2013 a Intel anunciou a próxima geração do Thunderbolt, com base no controlador com codinome Falcon Ridge. No momento foi anunciado que seu lançamento seria no final de 2013. A Apple anunciou, em junho de 2013, o Thunderbolt 2 em sua Conferência de Desenvolvimento WWDC, onde divulgou que seria utilizado no seu próximo Mac Book Pro. Lançamento do Thunderbolt 2 no MacBook Pro, em 22 de outubro de 2013.

### Cobre x Fibra óptica

O thunderbolt, que durante sua fase de desenvolvimento foi chamado de Light Peak, foi inicialmente projetado para ser utilizado com transmissão de fibra óptica (o que levou ao codinome Light Peak), pois esta tem alcance de até 100 m, e tem um potencial futuro de alcançar velocidades de transmissão de até 100 Gb/s. O cobre alcança 3 m de comprimento no máximo e, apesar de alcançar apenas 3 m, possui capacidade de transmitir energia elétrica, o que proporciona a dispositivos externos não ser necessário possuírem fonte de energia própria, pois podem utilizar a energia fornecida através do cabo de cobre, algo que não é possível através de fibra óptica.
Tecnologias Thunderbolt com utilização de fibra óptica consistem de um chip controlador e de um módulo óptico, os quais são incluídos em plataformas que suportam esta tecnologia. O módulo óptico tem por função converter energia elétrica em luz, através de lasers em miniatura (VCSELs) e fotodetectores. É possível, através do chip controlador, fornecer um protocolo de comutação para suportar múltiplos protocolos sobre um único cabo. Um link de comunicação óptica consiste basicamente em três blocos principais, fibra óptica, fontes de luz e detectores de luz.
Devido ao elevado custo da fibra óptica, da elevada complexidade para o manuseio da fibra e da não capacidade da fibra de fornecer energia elétrica a dispositivos externos, a fibra não ganhou tanto destaque, embora ainda utilizada em conexões entre dispositivos que possuam fonte de alimentação exclusiva e sem necessidade de serem alimentados por cabo.
O cobre passou a ganhar mais destaque, embora possuindo menor alcance, por permitir transmissão de energia a dispositivos externos, por possuir um custo muito baixo e pela baixa complexidade de manuseio. O cobre só alcança 3 m por que a partir dai sofre com interferência eletromagnética, a qual são ruídos que interferem na transmissão de informação.

### Thunderbolt 1

A conexão Thunderbolt 1 é similar ao Mini DisplayPort, sendo que possui, dois canais separados onde cada canal suporta 10 Gb/s de transferência, um canal é para envio de dados enquanto o outro é para recebimento de dados. O Thunderbolt 1 suporta PCI Express 2.0 e PCI Express 2.0 4×, também suporta DisplayPort 1.0 até versão 1.1a. O Thunderbolt 1 foi lançado em fevereiro de 2011, quando a Apple lançou o MacBook Pro.

### Thunderbolt 2

Em nível físico, as conexões Thunderbolt 1 e 2 são idênticas, porém ao nível lógico, a segunda geração da tecnologia permite agregação de canal, onde os dois canais de 10 Gb/s que eram separados podem agora ser combinados em um canal lógico simples de 20 Gb/s. A Intel afirma que este protocolo será capaz de transferir um vídeo de qualidade 4K. Thunderbolt 2 incorpora o suporte ao DisplayPort 1.2, que permite streaming de vídeo 4K a um simples monitor ou dois monitores QHD, e é retro-compatível com os cabos e conectores Thunderbolt. O primeiro produto para o mercado que incorpora esta tecnologia é uma placa-mãe ASUS, anunciada em 19 de agosto de 2013.

### Futuro do Thunderbolt

Muitas especulações já surgiram em relação a qual seria a próxima especificação do Thunderbolt, muitos sites especializados apostam em uma especificação onde o controlador seja o Alpine Ridge, com velocidade de transferência de 40 Gb/s, com largura de banda de duas vezes. Também se especula suporte a PCI Express 3.0, e suporte ao HDMI 2.0 (permitindo resoluções 4K a 60 Hz). Fala-se em redução de 50% do consumo de energia e capacidade de fornecer 100 W de energia. Este "próximo" Thunderbolt é esperado para estrelar junto ao chipset Intel Skylake, o qual tem previsão de lançamento só para 2015. Todos estes fatos são apenas especulações, não confirmadas, mas que apresentam uma das inúmeras possibilidades para esta tecnologia que tanto vem sendo discutida.

## Camada física

Os conectores Thunderbolt são fisicamente similares aos conectores Mini DisplayPort (concorrentes diretos dos conectores HDMI). A interface Thunderbolt suporta as saídas de DVI, HDMI, DisplayPort e VGA através de adaptadores. A Intel, principal desenvolvedora dessa interface, iniciou sua produção com cabos feitos de fibra óptica (por conta disso por um tempo ela deu o nome de Light Peak a ele) podendo chegar até 100 m de comprimento, porém, devido à complexidade de manuseio bem como seu custo, ela acabou tendo que fazer uso do bom e velho conhecido cobre que, na média, pode chegar até 3 m de comprimento. Mesmo assim, a empresa ainda cogita no futuro fazer uso da fibra, que além de permitir maiores extensões aos cabos, pode alcançar taxas de até 100 Gb/s. O mesmo conector é usado tanto para cabos elétricos como para cabos ópticos. Os cabos elétricos podem ter até 3 m de comprimento, já os ópticos podem ter dezenas de metros.
Esse padrão ainda possibilita conexão com até seis dispositivos, funcionando em cadeia um conectado ao outro, atentando para o fato de que dois desses podem atuar no DisplayPort, uma boa notícia para quem deseja a conexão entre vários monitores. Em um exemplo dado pela própria Intel, é possível conectar um HD externo a um monitor e este a um notebook. Os dados do HD podem então serem acessados pelo laptop. É bom saber que na hora de fazer a conexão entre vários dispositivos se o primeiro for de uma tecnologia que opera com taxas muito inferiores, pode influenciar no desempenho dos demais, sendo então aconselhável colocá-lo no final da cadeia.
A documentação da Intel cita que cada porta possui 2 canais full-duplex e que cada canal pode transmitir até 10 Gb/s em ambas as direções. O conector tem 4 pares de sinais diferenciais e como isso se traduz em uma capacidade full-duplex de 10 Gb/s não está muito claro, pois isso requereria essa velocidade em cada par. A Intel documenta que a codificação 8b/10b encoding é utilizada, tal como na PCI Express 2.0 operando em 5 GHz, e não como a PCI Express 3.0 que opera a 8 Gb/s com a codificação 128b/130b, porém esse assunto ainda merece esclarecimentos adicionais.
Interessante é notar que o gerenciamento da porta Thunderbolt é feito por um pequeno chip controlador, fazendo com que a tecnologia não seja diretamente dependente de um chipset ou mesmo do processador para funcionar. No que se refere à alimentação elétrica, cada porta Thunderbolt pode oferecer 10 W de potência, com o fornecimento de energia sendo feito pelo mesmo cabo utilizado para dados.

## Camada de transporte

A interface Thunderbolt tem uma camada de transporte por pacotes com suporte a Qualidade de serviço (telecomunicações). Ela pode multiplexar o tráfego da PCI Express e da interface DisplayPort no mesmo link. Os protocolos DisplayPort e PCI Express são mapeados para a camada de transporte, sendo que este mapeamento tem função exercida por um adaptador de protocolo, o qual está responsável por encapsular eficientemente as informações mapeadas de pacotes de protocolo da camada de transporte. Quando mapeados os pacotes do protocolo entre a fonte e o destino, estes podem ser enviados através de um caminho que pode passar por vários controladores. No dispositivo de destino o adaptador de protocolo recria o protocolo mapeado no seu formato nativo.
Com o seu protocolo de tempo, é possível que os dispositivos se sincronizem em 8 ns.
Segundo a Apple, "Com a nova porta Thunderbolt você encadeia até seis dispositivos, incluindo sua tela, compondo uma estação de trabalho do mais alto nível."

## Camada de aplicação

Os protocolos PCI Express e DisplayPort são mapeados de maneira transparente na interface Thunderbolt. Os dispositivos conectados através dessa interface podem ser controlados através dos drivers dos sistemas operacionais. A proposta desta tecnologia é a de facilitar ao máximo a vida do usuário, por isso, uma única porta Thunderbolt permite a transmissão de dados de áudio e de vídeo, conexão Ethernet e até mesmo de energia para alimentação dos dispositivos conectados, dispensando, muitas vezes, uma fonte de eletricidade exclusiva.

## Segurança

O Thunderbolt, por estender o barramento PCI Express, permite o acesso a muito baixo nível do sistema. Um dispositivo Thunderbolt pode ser configurado para agir de forma maliciosa. Um dispositivo Thunderbolt, quando conectado a um computador, permite acesso direto e sem nenhuma restrição à memória e a outros dispositivos do computador a qual se conectou. Chamada de Ataque DMA, é uma técnica muito explorada por invasores, através de dispositivos que possuam portas de expansão de alta velocidade que permitam acesso direto a memória.
É possível instalar malware na memória do computador ou ler qualquer conteúdo que esteja presente na memória, além de burlar a maioria das medidas de segurança do sistema operacional. Isto só é possível porque o Thunderbolt permite acesso direto à memória. Este acesso tem por objetivo uma melhora no desempenho, pois deste modo permite que grandes quantidades de dados possam ser transmitidas diretamente entre um dispositivo Thunderbolt e a memória do sistema, o que evita a necessidade do CPU e de software.
Em Las Vegas (EUA), Durante a Conferência de Segurança Black Hat, o pesquisador Loukas K demonstrou como o Thunderbolt pode ser inseguro. Utilizando um adaptador de rede que foi modificado, ao ligar o computador com o adaptador conectado, um driver malicioso é carregado e injetado no Kernel do Mac OS X. Este código só pode ser executado devido a um recurso da EFI, que para aumentar a compatibilidade com dispositivos de hardware, permite o uso de roms de expansão. O driver malicioso não fica na EFI, mas o invasor pode alterar componentes do sistema ou até o setor de inicialização do MacBook, no disco rígido. Está alteração permite até a captura de teclas digitadas.

## Comparações

O Thunderbolt 1 possui uma velocidade teórica de 10 Gb/s por canal, sendo 2 canais ao todo (um canal para envio e outro para recebimento). A velocidade teórica refere-se a velocidade máxima que é possível alcançar em situações ideais, ou seja, situações onde não há interferência de variáveis externas. O Thunderbolt 2 consegue alcançar velocidade de 20 Gb/s, através de um canal agregado. O USB 2.0 possui velocidade de 480 Mb/s, enquanto seu sucessor, o USB 3.0 alcança velocidade de 5 Gb/s e o USB 3.1 consegue velocidade máxima de 10 Gb/s. O FireWire 400 consegue alcançar velocidade teórica de 400 Mb/s, sendo que o FireWire 800 chega a uma velocidade de 800 Mb/s.

## Preços

Os preços dos cabos Thunderbolt mudaram ao longo do tempo, pois os primeiros cabos lançados, em junho de 2011, custavam US$ 49,00 (cabos de 2 m). Em junho de 2012, a Apple reduziu o preço do cabo para US$ 39,00, preço este que se manteve até novembro de 2014. Outros cabos, como o de 0,5 m, mantiveram-se com o mesmo preço de US$ 29,00 em janeiro de 2012, até agora, novembro de 2014. Cabos ópticos, no entanto, registram preços que variam de US$ 179,95 até US$ 1299,00, de acordo com seu comprimento, que estão disponíveis de 5,5 m até 60 m.
Cabos adaptadores Thunderbolt para Ethernet Gigabit já são produzidos por diversas fabricantes, como a Belkin, Corning, Kanex, Lintes Technology, StarTech, entre outras. Os produtos desenvolvidos para audio e video também possuem muitas fabricantes, como AJA Video Systems, Apogee Electronics, BlackMagic Design, Lynx Studio Technology, Egosis, StarTech, Universal Audio, entre outras. Produtos para Ethernet Gigabit utilizando Thunderbolt também pousem muitos fabricantes, como Kanex, Sonnet Technologies, Elgato Systems, Belkin, ATTO Technology, HighPoint Technologies, Matrox, entre outras.

## Controladores

O controlador Thunderbolt é a peça chave para criar qualquer produto Thunderbolt, sendo que ele possui:
* Um chaveador Thunderbolt de alto desempenho;
* Uma ou mais portas Tunderbolt;
* Uma ou mais portas para adaptar o protocolo DisplayPort;
* Um chaveador PCI Express, este para adaptar o protocolo PCI Express.
As interfaces externas do controlador, que estão conectadas ao sistema, dependem da função para o qual o sistema foi projetado. Controladores hospedeiros possuem interfaces de entrada para DisplayPort e para PCI Express, além de interfaces para a própria tecnologia Thunderbolt. Os drivers nativos para DisplayPort e para PCI Express são utilizados pelo Thunderbolt, não sendo preciso desenvolver novos drivers para habilitar o uso do Thunderbolt no computador. Integrando em um único chip todos os recursos necessário para a implementação do Thunderbolt, o controlador do host torna a tecnologia Thunderbolt muito simples e fácil de ser implementada em diversos produtos, de diversos fabricantes.
Controladores Thunderbolt desenvolvidos pela Intel.
| Nome | Codinome | Lançamento | Faixa de temperatura de operação | Número de canais | Número de portas | Configuração do PCI Express | DisplayPort | Tamanho do pacote | Energia |
| Controlador Thunderbolt™ 2 Intel® DSL5320 | Falcon Ridge | Terceiro trimestre de 2013 | N/A | 2 canais | Único | N/A | N/A | 12mm x 12mm | 2.1 W |
| Controlador Thunderbolt™ 2 Intel® DSL5520 | Falcon Ridge | Terceiro trimestre de 2013 | N/A | 4 canais | Duplo | N/A | N/A | 12mm x 12mm | 2.8 W |
| Controlador Thunderbolt™ Intel® CV82524EFL | Light Ridge | Quarto trimestre de 2010 | de 0 °C até 65 °C | 4 canais | Duplo | PCIe 2.0, 1x4 ou 4x1 | DP 1.1a 2x saida, 1x fonte | 15mm x 15mm | 3.2 W |
| Controlador Thunderbolt™ Intel® DSL2210 | Port Ridge | Quarto trimestre de 2011 | de 0 °C até 65 °C | 1 canal | Único | PCIe 2.0, 1x2 ou 2x1 | N/A | 5mm x 6mm | 0.7 W |
| Controlador Thunderbolt™ Intel® DSL2310 | Eagle Ridge | Primeiro trimestre de 2011 | de 0 °C até 65 °C | 2 canais | Único | PCIe 2.0, 1x4 ou 4x1 | DP 1.1a 1x dreno | 8mm x 9mm | 1.85 W |
| Controlador Thunderbolt™ Intel® DSL3310 | Cactus Ridge | Segundo trimestre de 2012 | de 0 °C até 65 °C | 2 canais | Único | PCIe 2.0, 1x4 ou 4x1 | DP 1.1a 1x dreno | 2mm x 12mm | 2.1 W |
| Controlador Thunderbolt™ Intel® DSL3510L | Cactus Ridge | Segundo trimestre de 2012 | de 0 °C até 65 °C | 4 canais | Duplo | PCIe 2.0, 1x4 ou 4x1 | DP 1.1a 2x dreno, 1x fonte | 12mm x 12mm | 2.8 W |
| Controlador Thunderbolt™ Intel® DSL4410 | Redwood Ridge | 2013 | N/A | 2 canais | Único | N/A | N/A | 10mm x 10mm | N/A |
| Controlador Thunderbolt™ Intel® DSL4510 | Redwood Ridge | 2013 | N/A | 4 canais | Duplo | N/A | N/A | 12mm x 12mm | N/A |
| Controlador Thunderbolt™ Intel® DSL5110 | Thunderbolt LP | Primeiro trimestre de 2014 | N/A | 2 canais | Único | N/A | N/A | 8mm x 8mm | 1.3 W |