As you can see in the image, I want the blank space of column 1 to be shared with other columns so the table looks more neat and best for readers.
\setcolsep
does not solve this issue.
UPDATE: Fixed the code:
\documentclass{article}
\usepackage{float}
\usepackage{array}
\usepackage{tabularx}
\usepackage{xepersian}
\begin{document}
\renewcommand{\tabularxcolumn}[1]{m{#1}}
\begin{tabularx}{\textwidth}{| X | X | X |}
\hline
ویژگی & TCP & UDP\\\hline
نوع ارتباط & بر اساس اتصال & بدون برقراری اتصال (ممکن است هر مقدار اطلاعات فرستاده شود و آن پایان ارتباط باشد)\\
مزیت & ارتباط قابل اطمینان & سرعت بالا\\
استفاده پروتکل های دیگر & \lr{HTTP}\footnote{\lr{Hypertext Transfer Protocol}}, \lr{HTTPS}\footnote{\lr{Hypertext Transfer Protocol Secure}}, \lr{FTP}\footnote{\lr{File Transfer Protocol}}, \lr{Telnet} & \lr{DNS}\footnote{\lr{Domain Name System}}, \lr{DHCP}\footnote{\lr{Dynamic Host Configuration Protocol}}, \lr{VOIP}\footnote{\lr{Voice over Internet Protocol}}\\
نظم ارسال & طبق نظم مشخص شده & بدون نظم\\
سایز هدر & \lr{20 Bytes} & \lr{8 Bytes}\\
خطایابی & بله & بله\\
بازیابی & بله (پس از خطایابی، اطلاعاتی که اشتباه انتقال یافته اند دوباره منتقل می شوند) & خیر\\
\hline
\end{tabularx}
\end{document}
r
instead ofX
? – TeXnician Dec 29 '17 at 7:39\renewcommand{\tabularxcolumn}[1]{m{#1}}
Added that to code – Shayan Dec 29 '17 at 7:42xelatex
and you'll see what a compilable document means. – user2478 Dec 29 '17 at 7:46